使用RxJava处理异步极其方便,各类操做符能够对数据作流水线式操做,再加上与Retrofit的结合,使得Andorid开发变的极其简单。惟一美中不足的就是RxJava不符合咱们以往的编程思想,学习Rxjava存在必定的难度,不少工程师对Rxjava都不能彻底理解。不过,相信如下2个内容会让你对Rxjava的使用有一个更清晰的认识。html
能够清晰看到操做都发生在什么线程中java
项目地址:https://github.com/xinghongfei/Hello-RxJavaandroid
自定义View主要掌握如下四部份内容:git
你须要的东西都在这里https://github.com/xinghongfei/awesome-viewgithub
2.进程保活编程
(个人学习过程是从入门到放弃:你们只作了解,初步理解原理便可)
Android 进程保活招式大全微信
开源项目Hello-Daemon框架
daemon.gif
项目地址https://github.com/xinghongfei/Hello-Daemon
线上程序出现bug,必需要有妙手回春的本事,想成为一名Andorid高工,这是必备技能。
如今市面上热修复框架不少,如下是常见的四种。
Tinker | QZone | AndFix | Dexposed | |
---|---|---|---|---|
类替换 | yes | yes | no | no |
So替换 | yes | no | no | no |
资源替换 | yes | yes | no | no |
全平台支持 | yes | yes | yes | no |
即时生效 | no | no | yes | yes |
性能损耗 | 较小 | 较大 | 较小 | 较小 |
补丁包大小 | 较小 | 较大 | 通常 | 通常 |
开发透明 | yes | yes | no | no |
复杂度 | 较低 | 较低 | 复杂 | 复杂 |
gradle支持 | yes | no | no | no |
接口文档 | 丰富 | 较少 | 通常 | 较少 |
Rom体积 | Dalvik较大 | 较小 | 较小 | 较小 |
成功率 | 较高 | 最高 | 通常 | 通常 |
总的来讲:
QZone方案主要问题是插桩带来Dalvik的性能问题,以及为了解决Art下内存地址问题而致使补丁包急速增大的。
Tinker热补丁方案不只支持类、So以及资源的替换,它仍是2.X-7.X的全平台支持。它无需插桩,补丁大小也远远小于其余方案。Tinker已运行在微信的数亿Android设备上。
下面这个项目是一个基于热修复框架Tinker的Demo,并总结了一些常见的问题。
tinker.gif
项目地址https://github.com/xinghongfei/Hello-Tinker
常见的架构有:MVC,MVP,MVVM。使用最多的就是MVC架构了,如今不少应用也使用MVP架构,MVVM用的还不多。
architucture.png
Android App的设计架构:MVC,MVP,MVVM与架构经验谈
Google的android-architecture
Android Data Binding
下面这个项目是一个特别简单的MVP架构框架,模拟文件下载。
mvp.gif
项目地址https://github.com/xinghongfei/Hello-MVP
结语:为了收集整理这些东西,基本上整个国庆假期的时间和精力都花费在这个上面,但愿会对你们有帮助,将来会不断的完善。若是你喜欢个人文章,能够关注个人Github,掘金,简书,😄😄,后续会分享更多精彩的内容。祝好。
做者:Maat红飞 连接:http://www.jianshu.com/p/d791bbede02c 來源:简书 著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。