android开发 V2EX社区客户端源码

时间:2016-12-22 10:55 来源:互联网 作者:源码搜藏收藏

  • 源码类别:项目源码
  • 源码大小:4.1 MB
  • 编码格式:gbk,utf8,不限
  • 运行环境:Android studio
  • 广告推荐

V2EX-android 即 V2EX社区客户端。

支持功能

  • 话题查看

  • 节点查看和按字母搜索

  • 用户资料查看

  • 话题回复

  • 话题创建

  • 未读提醒查看

其他功能

  • 实现了节点、话题、用户三个Scheme,通过话题、节点、用户链接直接打开客户端进行相关信息浏览

  • 对用户已经浏览过的话题作记忆处理并在界面上进行展示

  • 话题、帖子等采用了卡片式布局

绝大部分数据是通过调用V2EX的Json API解析得到的,少部分涉及到用户个人信息则是通过Http模拟浏览器请求页面。但是Json API调用有严格的调用次数和时间限制,为了避免这个问题,我将数据缓存到文件系统中,如果用户不手动刷新,则会直接从缓存中读取的,当然这并不能解决根 本问题,每个小时180次请求的警戒线还是很容易就突破,这时候服务器返回403禁止访问,会很大的影响用户体验。我在后续版本中会考虑绕过Json API用模拟浏览器访问来代替。

        

开发相关

开发用的是 Android Studio,除了编译速度感觉略慢一点点,就没有什么其它的大问题了,而且智能提示更智能,此外用 gradle 做库依赖确实方便,真的可以甩 eclipse 几条大街了。

V2EX客户端里面的列表用到了Android兼容库

compile 'com.android.support:cardview-v7:21.0.3'
compile 'com.android.support:recyclerview-v7:21.0.3'

刚开始对于V2EX的主题列表和回帖列表,我都是用ListView实现的。不过后来发现总存在一些问题,在Nexus 5上没什么问题,但是在其他手机上列表会出现一些锯齿。于是我用RecyclerView来重新实现了一遍。CardView则对每个话题Item进行卡 片式布局。

这是V2EX-Android中用到的第三方库:
   compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
   compile 'com.loopj.android:android-async-http:1.4.6'
   compile 'com.github.mrengineer13:snackbar:1.1.0'
   compile 'com.melnykov:floatingactionbutton:1.3.0'

  • android-async-http

    封装了 http 请求,直接支持 json,gzip 压缩,相当省事。

  • universal-image-loader

    异步图像加载,缓存和显示,如果你想要在界面上显示网络图片,那么赶紧使用它吧。

  • pagerslidingtabstrip

    交互式页面指示器控件,完美配合ViewPager控件。

  • floatingactionbutton

    浮动Action Button控件,完美配合ListView、RecyleView。

  • snackbar

    Snackbar 是 Material Design 下的一个组件,这是模仿Snackbar的效果实现了一款兼容5.0系统以下的Snackbar。

除此以外,还使用了

  • 友盟的SDK作统计分析和自动更新

  • BadgeView作数字提醒

  • Pinyin4J 将汉字转化为对应的拼音字母

本站资源仅限于学习研究,严禁从事商业或者非法活动! 源码搜藏网所有源码来自互联网转载与用户上传分享,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

项目源码下载排行

最新文章