资讯专栏INFORMATION COLUMN

记一个Android微博客户端的开发

charles_paul / 3036人阅读

摘要:地址最近抽了点时间开发了一个微博系统来练手,踩了不少坑,也积累了一些经验。字段登录后存入,并缓存到登录后自动刷新,旧的自动废弃。

github地址

最近抽了点时间开发了一个Android微博系统来练手,踩了不少坑,也积累了一些经验。

因为之前没有做过和服务器的交互。先用php+mysql+redis构建web后台,通过json格式提供接口,
这里踩了Gson泛型的坑,不过我是通过对json协议做了特别设计绕过了坑,由Okhttp搭配Gson提供了统一
的服务接口,用起来还是比较顺手,也没有采用Retrofit之类的框架。

由于我是边做边设计架构,因此也走了不少弯路,添加数据库表字段,然后又要修改对应的JavaBean,不过好在对架构影响不大,因此改动不大,拓展性良好。

个人觉得最重要的是设计好Json数据协议,利用PHP输出Json数据,采用Okhttp和Gson得到Java数据模型,Gson泛型的问题,将实体消息封装到inner字段内,通过类继承绕开泛型,code字段和msg字段交给BaseActivity,BaseFragment检查处理。

Token字段登录后存入MySQL,并缓存到Redis,登录后自动刷新,旧的自动废弃。

其余主要是一些常规的优化,图片的标签防止错位,缩略图,LRU的缓存等

微博比较有意思的就是@功能,#话题#功能,通过正则表达式匹配来提取信息,生成提醒等批量插入MySQL,提高性能,#话题#功能有起始和终止#号,比较好匹配,而@功能由于没有中止符号较为难办,本项目支持两种:@Java@Scala@Kotlin 或者@Java @Scala @Kotlin 即通过后面的@符号或者空格来界定,不知有无更好的设计。UI通过SpannableString显示和响应点击事件。

运行截图

用了一些开源的工具库,其中还有不少坑,不得不打补丁修补。不过界面的设计不停地修改,还是令人挺满意的。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/28393.html

相关文章

  • 一个Android博客端的开发

    摘要:地址最近抽了点时间开发了一个微博系统来练手,踩了不少坑,也积累了一些经验。字段登录后存入,并缓存到登录后自动刷新,旧的自动废弃。 github地址 最近抽了点时间开发了一个Android微博系统来练手,踩了不少坑,也积累了一些经验。 因为之前没有做过和服务器的交互。先用php+mysql+redis构建web后台,通过json格式提供接口,这里踩了Gson泛型的坑,不过我是通过对jso...

    toddmark 评论0 收藏0
  • 一个Android博客端的开发

    摘要:地址最近抽了点时间开发了一个微博系统来练手,踩了不少坑,也积累了一些经验。字段登录后存入,并缓存到登录后自动刷新,旧的自动废弃。 github地址 最近抽了点时间开发了一个Android微博系统来练手,踩了不少坑,也积累了一些经验。 因为之前没有做过和服务器的交互。先用php+mysql+redis构建web后台,通过json格式提供接口,这里踩了Gson泛型的坑,不过我是通过对jso...

    CoderStudy 评论0 收藏0
  • 技术人攻略访谈十九:iOS大V养成

    摘要:微信公众账号的粉丝也超过了人。技术人攻略能有这么多粉丝和你坚持写了两年技术博客关系很大。 showImg(http://segmentfault.com/img/bVbJ6V); 文:Gracia 导语:本期采访对象唐巧@唐巧_boy,猿题库iOS高级研发工程师。2011年从Java转向iOS开发,3年时间已成为iOS开发圈颇有名气的技术高手。他的影响力,很大程度上来自于他运营的微...

    周国辉 评论0 收藏0
  • android新技术

    摘要:酷炫即时通讯和开源项目汇总这是一个整理即时通讯和社交系统优秀开源项目的文档,项目上传欢迎提交更新。 UI之可折叠的TextView 先上效果 一、思路 1. 计算text的行数 实现可折叠的TextView最重要的一点是在setText()前计算出text所需的行数计算行数需要分为两种情况 1.1 没有换行符的text 行数等于text的宽度除于TextView的宽度 再判断text的...

    chanthuang 评论0 收藏0
  • Android特效 - 收藏集 - 掘金

    摘要:关于最友好的文章背压掘金前言背压可能是所有想要深入运用的朋友必须理解的一个概念。一概述这两天时间动手撸了个视图扩散切换效果的控制器,兼容至,更方便我们在视图切自定义控件之像一样使用添加和掘金添加和,实现像和一样的和和方法。 Android仿探探堆叠滑动控件(支持方向控制,内嵌入RecyclerView) - Android - 掘金堆叠滑动控件,类似于社交软件探探的效果,并增加以下扩展...

    KoreyLee 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<