- 修复了在离线模式下不能在bihu问答广场正常使用缓存文件来进行自动加载下一页的bug
- 性能优化,增加了在bihu问答广场划至底部后自动加载下一页的功能,缩短了加载时间
-
增加了注册时用户名最多12个字符的限制
-
修复了发布问题时上传图片失败的bug
-
修复了进入问题详情界面后自动弹出键盘的bug
-
修复了在NaviagtionView中点击登录登陆成功或者登录界面的注册成功后,不会及时更改NaviagtionView的用户id的bug
-
修复了在NaviagtionView中点击登录界面的注册页面并注册成功后(即用户头像未设置),NaviagtionView中的头像为空的bug
现在在这种情况下会显示默认头像
-
更改了一些UI的参数
-
目前 Meizu 16th(Android 8.1 Google APIs)有未知的问题导致bihu所有网络请求没有响应
感谢Sajo提供的使用反馈
-
兼容到 API 19 Android 4.4(Google APIs)
如果发现在API 19下出现经过旧版APP上传的图片(头像,发布的问题内容,回答的问题)无法显示,已经发布的问题内容和回答的问题的图片的Url无法修改无解,但头像可以重新更换。原因是API 19无法拿到名字带空格的文件名
-
增加了发布问题和回答问题上传图片的数量限制,最多5张
感谢Fxy4ever提供的建议和暴力测试
Tips:请勿点击由提问者fxy发布的内容为“233"的问题“多发几张。。”可能会导致应用程序崩溃
-
增加了将被采纳的问题置顶的功能
-
增加了在问题详情页面长按问题内容和回答内容进行复制的功能
-
修复了正在游览Bihu任何内容时,突然断开连接后,主动刷新却无法加载缓存内容(进入离线模式)的bug
现在被可以正常刷新并显示缓存的内容,同时进入离线模式
Tips:离线模式查看我的收藏不会显示
-
修复了正在游览Bihu任何内容时,突然断开连接后,点击点赞等在离线模式不应该能使用的功能时显示的不正确Toast的bug
现在它可以正确识别目前网络状态并给出正确的Toast来引导用户操作
-
修复了离线模式下进入自己发布的问题闪退的bug
现在在离线模式可以进入自己发布的问题,可以正常显示已采纳的回答,但是不会有采纳的按钮
-
修复了更换到离线模式下顶部导航栏的头像没有更改的bug
-
性能优化,将较大的图片进行压缩缓存和显示
-
性能优化,微调了一些我都忘记了的东西
-
代码优化,增加代码复用率(6219line+633line)
- 获得最新的Gank资讯📰
Gank资讯主页面 | Gank资讯点击及复制URL |
---|---|
- 获得最新的Gank闲读📖api真的很慢。。。。。。
- Bi乎api的完整解决方案😆
使用默认账号进入问答广场 | 登录 | 赞、踩、收藏(离线更新) |
---|---|---|
发布问题(带图片) | 问题详情界面 | 回答问题(带图片) |
---|---|---|
无网络状态 | 恢复网络 | 更换头像 |
---|---|---|
- 使用通过将图片保存在本地来缓存图像
- 在无网络连接或者网络连接超时时会使用先前缓存的数据
- 📦封装了很多方法,一部分放在developtools包内,另一部分在bihu包里,不知道算不算封装工具类,主要包括:
- 网络请求类-HttpsRequestHelper(GET&POST)
- 图片加载、处理类-MyImageTools(包含:从网络获取图片,从本地获取图片,保存图片到本地,int类型的资源地址转换成Bitmap,将Bitmap切成圆形)
- 实现Bihu所有api的BihuPostTools在bihu包里,还有离线时的处理方法
- 用了红岩的第一次作业的时间轴转换工具来计算最新更新时间
- 😆在没有登陆自己的bihu时默认使用游客账号登陆并可以查看问答,触发相关需要登陆用户自己账号的事件的时候会弹出login界面,登陆成功后正常使用(整个应用程序网络请求使用唯一用户(User):BihuFragment.nowUser)
- 😟在无网络连接(非连接超时)时进入离线模式😌,用户id替换成id(上次登录的)+(离线),头像更换为无网络连接的头像,所有数据为缓存数据,Bihu相关功能被禁用,在个人中心点击头像登陆后若网络恢复即可继续正常使用。(捕获UnknownHostException 并处理)
- 在网络连接超时时自动加载缓存的数据😌(捕获TimeoutException 并处理)
- 所有数据加载的时候模式都为:获取到json后优先加载文字数据,有图片的先使用占位图代替,然后再开线程加载图片,加载完成后及时更新😝(在ViewHolder中开线程然后在使用提前获取到的mainHandler(构造adapter时就已经把Activity的Handler传进来)来更新ui)
- 整个应用程序加载图片时使用唯一方法MyImageTools.getBitmap(String url),该方法封装了从url获得图片和从本地获得图片😬
- 在Bihu发布问题,回答问题时可以选择多张图片,问题详情页面可以正常显示全部图片(LinearLayout.addView)
- 由于ganknew和闲读有些资讯、Bihu有些问题没有图片😫,使用对应的占位图来代替😌
- 图片加载,RecyclerView首次加载时会有淡入动画,但recyclerview里的图片由于机制问题会在第一次之后依然有淡入动画😭
- 一些较为人性化的优化设计😆,比如activity之间的跳转,注册成功后会自动跳过登录界面直接登录等
- 部分机型无法从相册获得照片的uri,欢迎提交issue
- POST请求
- 利用接口回调给RecyclerView和RecyclerView中的一个控件添加点击事件
- 将handler传入RecyclerView从而进行实时UI更新。
- LinearLayout的一般使用,减少对约束布局的使用
- 自定义动画anim的超简单实用(透明度的更改Alpha)
- 打包有签名的apk
- log的疯狂使用
- ……省略无数个坑,在代码中都有相对应的注释
一是因为要补考所以寒假结束前一周没得做,二也是最重要的是因为自己懒了,压到ddl再做。 这几天一直在熬夜肝已经连续5天肝到3点了,仔细回想来学校前不过是做了gank和闲读的adapter,界面和bihu的问题列表,登陆也没写,一直都是默默在后台登录,大部分工作是来了学校补考完再和sajo玩了两天之后,也就是这5天做的。 虽然明显是自找的,但是我第一次写代码写到吐了……
- 没有设计预加载
Bihu是一次性加载完所有数据(以后的版本会增加下一页的功能- 没有欢迎界面
- 闲读的api真的非常非常非常之慢,我尽力了
- 代码其实不规范,很多无用或者过于复杂的设计
- 做得太慢了