抱歉,最近一个多月一直比较忙,博客许久未更新。后续更新周期会慢一些,不过依旧会陆续分享一些原创。
最近在调研一些事情,欢迎大家留言告诉我自己公司的一些情况、经验及想法
1. Android单元测试
a. 单元测试覆盖率情况
b. 测试辅助框架选型,Quality Tools for Android, android-test-kit, robolectric, Android FEST指标同下
c. Jenkins持续集成使用情况
2. Android依赖管理
目前主要是Maven和Gradle或是混合的选择,Maven是网站演化而来,Gradle是google推出,选用哪个及原因,碰到的坑。
3. Android 公共库选型
在android-open-project也分享过很多不错的开源项目,同类功能也大多有两个以上不错的开源项目,在具体选择上准备做一些对比测试,包括优劣、使用场景、性能及稳定性对比,欢迎大家交流经验,有测试数据及报告最好。如
a. 依赖注入
AndroidAnnotations butterknife Dagger对比
b. ORM
greenDAO ActiveAndroid Sprinkles ormlite-android 国内的Afinal及xUtils对比
c. 网络类
Retrofit RoboSpice AndroidAnnotations等RESTFUL API支持对比
像EventBus与Otto的对比就非常专业https://github.com/greenrobot/EventBus#comparison-with-squares-otto
4. Android渠道包自动打包
a. 哪些渠道打包方式
b. 各自优劣
c. 各自原理
5. Android开发效率提高
a. 有益于效率提高的工具
b. 随着项目增大,debug时间越来越长,具体原因在哪儿?如何优化?
目前以上问题大都有一些解决方案,不过也都在寻求更好的解决方案。欢迎大家一起讨论。
允许的话后续也会分享BAT及与国内一些App公司的交流结果。
1、个人倾向于用gradle、使用方便、Google力推、用没多久,暂时还未碰到什么坑、之前一直用ant2、一直在用jenkins自动打渠道包发布测试、每天定时打包上传给到测试、集成起来非常好用3、渠道打包,我们用过两种方式,一种是:ant替换,每次编译一个包,脚本打包。第二种是:打好一个包,反编译后,替换渠道,后者相对速度快一些。4、开发效率的话,首先IDE选择Android Studio吧,依赖尽量用jar、用library编译会拖慢不少
不错,上面 4 种实践都挺好
楼主,,我现在在写一些东西,能不能抽空帮我看看,指点下。https://github.com/zouzhenglu/kzl-sModuleLibs/ 我打算在代码加上单元测试什么的,请问楼主比较倾向与那种测试方法或者工具?
https://github.com/Trinea/android-open-project#%E4%BA%8C%E5%BC%80%E5%8F%91%E8%87%AA%E6%B5%8B%E7%9B%B8%E5%85%B3 第三个robolectric
谢谢
楼主的干货好多好多好多好多。。。。能不能分享下你的学习经历。我目前工作差不多8个多月了。。。感觉迷茫起来了。。。公司android的人都走了,就我一个了。。项目经手好多人。。。。最后一次是我和我上司一起重构(用的是一个半成品日本人开发的一个框架)了一把,核心的他重构的,其它是我重构的,但是他上上个星期突然离职了,很多工作都没有交接清楚,而我现在面临的就是一个烂摊子,一个充满BUG的项目,最近催我上线,我就上线了,然后BUG,BUG,两天上了三次线,虽然目前线上的稳定了,但是里面肯定还有很多BUG,搞的我想在重构一次了,毕竟这个项目核心的还是不是我写的,重构核心也是上司弄的。我只负责用。但是下星期又面临着新需求和新功能的档期,公司约束很多,只有内网,开发起来非常不方便。。。。我想,等招到人了,而且这次的需求完善了,那么我想跳槽了。。。。。唉。。。迷茫。。。俺身份证和实际年龄差4岁,身份证97年。。。。。又不敢离职。。。。。但是公司约束太多太多。。。上厕所都要刷卡。。。。。。。迷茫。。。。
关于招聘,如果你有兴趣并且能力还可以可以给我简历trinea.cn@gmail.com
深圳这边有没有好的职位呢。。
http://www.trinea.cn/jobs/alibaba-taobao-zhifubao-b2b-aliyun-jobs/ 有深圳,没列出来
关于缓存这一块,公司的服务器没有缓存,所以只能在android端做,第一次进入先把获取的json转化为对象用greendao保存下来,下次进入直接读取这个,然后读取一次从服务器拉,在保存到greendao中,掩耳盗铃的做法,LZ有木有好点的缓存方法。
你将数据存sqlite没问题,对于缓存的时间不建议客户端设死。服务器端可以通过配置告诉你本地数据缓存多久,缓存哪些数据。http://www.trinea.cn/android/android-http-cache
感谢楼主,这么好的楼主,我忍不住晚上会做梦梦到楼主。来啵一个。我会持续关注楼主blog的。准备看下LZ blog用什么框架写的,然后看到了这个,我心动了。。业余也帮百度、腾讯、360、豌豆荚的朋友做人才推荐rn当然我的老东家阿里集团各个子公司Android职位也长期缺人,更是可以直接帮你把简历送到相关岗位老大手上
俺blog也用的wordpress、只是最近太忙,,所以一直没更新多少东西
请问Maven和Gradle一般在什么场景下使用?我这边好像用的不多
我正在做比较,也欢迎给我反馈使用经验
终于又等到您的更新了。大神加油。努力学习中
上面的调查有啥好的也可以分享下啊
请问关于 Android渠道包自动打包 都有哪方面的相关工具?
现在有用ant maven gradle的,也有反编译再打包的
期待有一些专业的经验与报告出来,哈哈
公司需求太多,加班都忙不过来,单元测试一直都没有也没时间写。Maven之前没用过,对Gradle研究了下,用Gradle依赖管理觉得很方便,而且兼容Maven,支持多渠道打包,ORM倾向ActiveAndroid,网络库之前用的Android-Async-Http,不过现在更倾向于Volley,依赖注入更偏向于轻量级的View注入框架butterknife,随着项目的增大以及历史遗留问题,很多都没有采用,实战有待加强,以上只是个人观点。
赞。单元测试同样做的少,但这块绝对可做。我亲身经历过web单元测试+Jenkins的效果,绝对的赞。我也倾向于Gradle,不过公司后台开发一直用Maven,所以换Gradle,我得有详细的对比和分析报告。公共库的选择上现在也大都先入为主,没有一个完整的对比。