Android高工必備技能跃须!

Step 1. 玩轉(zhuǎn)RxJava

使用RxJava處理異步極其方便蒙具,各種操作符可以對數(shù)據(jù)做流水線式操作球榆,再加上與Retrofit的結(jié)合,使得Andorid開發(fā)變的極其簡單禁筏。唯一美中不足的就是RxJava不符合我們以往的編程思想持钉,學(xué)習(xí)Rxjava存在一定的難度,很多工程師對Rxjava都不能完全理解篱昔。不過每强,相信以下2個內(nèi)容會讓你對Rxjava的使用有一個更清晰的認(rèn)識。

  1. 給 Android 開發(fā)者的 RxJava 詳解
  2. 開源項目Hello—RxJava讓你徹底明白RxJava的異步編程州刽。
可以清晰看到操作都發(fā)生在什么線程中

項目地址:https://github.com/xinghongfei/Hello-RxJava

Step 2. 自定義view

自定義View主要掌握以下四部分內(nèi)容:

  • 繪制機(jī)制:掌握onMeasure,onLayout,onDraw及相關(guān)類的使用空执。
  • 事件傳遞機(jī)制:掌握dispathTouchEvent(),onInterceptEvent(),onTouchEvent()三者的相關(guān)邏輯.
  • 屬性動畫:因為屬性動畫核心是對數(shù)值的變化。自定義View中使用屬性動畫很方便對數(shù)值進(jìn)行變換穗椅。
  • 相關(guān)手勢類辨绊。
你需要的東西都在這里https://github.com/xinghongfei/awesome-view

Step 3. 進(jìn)程間通信與進(jìn)程保活

  1. 進(jìn)程間通信
    進(jìn)程間通信通常通過以下7種手段:
  • Bundle:主要是放在Intent中房待,在四大組件間傳遞邢羔。
  • 文件共享:一個進(jìn)程寫文件驼抹,一個進(jìn)程讀文件。
  • SharedPreferences: 不支持并發(fā),底層基于xml拜鹤。
  • Messenger:底層是通過IPC進(jìn)行通信的框冀,主要是進(jìn)程間傳遞數(shù)據(jù),不支持并發(fā)敏簿。
  • Socket:基于TCP協(xié)議明也。
  • AIDL: 支持并發(fā),一個進(jìn)程可以調(diào)用另一個進(jìn)程的方法惯裕。
  • ContentProvider:不同的應(yīng)用間數(shù)據(jù)共享温数。
    詳解:《Android開發(fā)藝術(shù)探究》進(jìn)程間通信讀書筆記

2.進(jìn)程保活

(我的學(xué)習(xí)過程是從入門到放棄:大家只做了解蜻势,初步理解原理即可)
Android 進(jìn)程背糯蹋活招式大全

論Android應(yīng)用進(jìn)程長存的可行性

微信Android客戶端后臺保活經(jīng)驗分享

開源項目Hello-Daemon

daemon.gif

項目地址https://github.com/xinghongfei/Hello-Daemon

Step 4. 熱修復(fù)

線上程序出現(xiàn)bug握玛,必須要有妙手回春的本事够傍,想成為一名Andorid高工,這是必備技能挠铲。

現(xiàn)在市面上熱修復(fù)框架很多冕屯,以下是常見的四種。

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
性能損耗 較小 較大 較小 較小
補(bǔ)丁包大小 較小 較大 一般 一般
開發(fā)透明 yes yes no no
復(fù)雜度 較低 較低 復(fù)雜 復(fù)雜
gradle支持 yes no no no
接口文檔 豐富 較少 一般 較少
Rom體積 Dalvik較大 較小 較小 較小
成功率 較高 最高 一般 一般

總的來說:

  1. Dexposed無法支持全平臺拂苹,并不適合應(yīng)用到商業(yè)產(chǎn)品中安聘。
  2. AndFix作為native解決方案,首先面臨的是穩(wěn)定性與兼容性問題瓢棒,更重要的是它無法實現(xiàn)類替換黑毅,它是需要大量額外的開發(fā)成本的缎除。
  3. QZone方案主要問題是插樁帶來Dalvik的性能問題命锄,以及為了解決Art下內(nèi)存地址問題而導(dǎo)致補(bǔ)丁包急速增大的十办。
    Tinker熱補(bǔ)丁方案不僅支持類、So以及資源的替換嗅绰,它還是2.X-7.X的全平臺支持。它無需插樁搀继,補(bǔ)丁大小也遠(yuǎn)遠(yuǎn)小于其他方案窘面。Tinker已運(yùn)行在微信的數(shù)億Android設(shè)備上。

Android 熱補(bǔ)丁動態(tài)修復(fù)框架小結(jié)
Android熱補(bǔ)丁動態(tài)修復(fù)技術(shù)系列
安卓App熱補(bǔ)丁動態(tài)修復(fù)技術(shù)介紹

下面這個項目是一個基于熱修復(fù)框架TinkerDemo叽躯,并總結(jié)了一些常見的問題财边。

tinker.gif

項目地址https://github.com/xinghongfei/Hello-Tinker

Step 5. 架構(gòu)

常見的架構(gòu)有:MVC,MVP点骑,MVVM酣难。使用最多的就是MVC架構(gòu)了谍夭,現(xiàn)在很多應(yīng)用也使用MVP架構(gòu),MVVM用的還很少憨募。

architucture.png

Android App的設(shè)計架構(gòu):MVC,MVP,MVVM與架構(gòu)經(jīng)驗談
Google的android-architecture
Android Data Binding

下面這個項目是一個特別簡單的MVP架構(gòu)框架紧索,模擬文件下載。

mvp.gif

項目地址https://github.com/xinghongfei/Hello-MVP

Step 6. 整理中菜谣,敬請期待

Step 7.敬請期待

結(jié)語:為了收集整理這些東西珠漂,基本上整個國慶假期的時間和精力都花費(fèi)在這個上面,希望會對大家有幫助尾膊,未來會不斷的完善媳危。如果你喜歡我的文章,可以關(guān)注我的Github冈敛,掘金待笑,簡書,????,后續(xù)會分享更多精彩的內(nèi)容抓谴。祝好暮蹂。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市齐邦,隨后出現(xiàn)的幾起案子椎侠,更是在濱河造成了極大的恐慌,老刑警劉巖措拇,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件我纪,死亡現(xiàn)場離奇詭異,居然都是意外死亡丐吓,警方通過查閱死者的電腦和手機(jī)浅悉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來券犁,“玉大人术健,你說我怎么就攤上這事≌吵模” “怎么了荞估?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長稚新。 經(jīng)常有香客問我勘伺,道長,這世上最難降的妖魔是什么褂删? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任飞醉,我火速辦了婚禮,結(jié)果婚禮上屯阀,老公的妹妹穿的比我還像新娘缅帘。我一直安慰自己轴术,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布钦无。 她就那樣靜靜地躺著逗栽,像睡著了一般。 火紅的嫁衣襯著肌膚如雪铃诬。 梳的紋絲不亂的頭發(fā)上祭陷,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天,我揣著相機(jī)與錄音趣席,去河邊找鬼兵志。 笑死,一個胖子當(dāng)著我的面吹牛宣肚,可吹牛的內(nèi)容都是我干的想罕。 我是一名探鬼主播,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼霉涨,長吁一口氣:“原來是場噩夢啊……” “哼按价!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起笙瑟,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤楼镐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后往枷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體框产,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年错洁,在試婚紗的時候發(fā)現(xiàn)自己被綠了秉宿。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡屯碴,死狀恐怖描睦,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情导而,我是刑警寧澤忱叭,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站今艺,受9級特大地震影響窑多,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜洼滚,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望技潘。 院中可真熱鬧遥巴,春花似錦千康、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至摆霉,卻和暖如春豪椿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背携栋。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工搭盾, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人婉支。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓鸯隅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親向挖。 傳聞我的和親對象是個殘疾皇子蝌以,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容