使用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 來源:簡書 著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。