《Android 經驗分享》週刊第 7 期

世鋒日上發表於2016-10-31

《Android經驗分享》收錄國內外最近一週熱門的技術部落格以及優秀的類庫,星期一傍晚將準時更新給大家
微信公眾號:Android經驗分享
QQ討論群:386067289

本文已授權微信公眾號:Android經驗分享,在微信公眾號平臺原創首發。

熱點新聞
1.Android 7.1開發者預覽版開放下載
想要獲得和Pixel/Pixel XL中相同的系統版本嗎?Google宣佈Android 7.1開發者預覽版於今天正式開放下載,儘管並非是完全版本更新但依然帶來了一些新功能,包括對Daydream VR平臺和GIF鍵盤的支援,開放製作圓形圖示的相關資源和應用快捷方式(通過長按獲得類似於3D Touch的使用體驗)。

2.Android 7.1新功能官方解析,諸多亮點
安卓7.1是基於安卓7.0的增量更新,主要是為開發者服務的,包括各種優化和問題修復,新的API Level 25,以及一些新的開發功能,重點有四個:Daydream VR支援、A/B系統更新、應用快捷方式、影象鍵盤支援。

熱門部落格
1.開發安卓Apps,我所努力學習到的三十多條寶貴經驗
網上閱讀時獵取到的一篇外國工程師的文章,作者 César Ferreira 結合自己在安卓領域的摸爬滾打經歷總結了三十多條寶貴經驗,非常值得參考學習,故翻譯記錄於此,並作了一些補充說明。

2.Android 程式絕殺技--forceStop
話說Android開源系統擁有著App不計其數,百家爭鳴,都想在這“大爭之世”尋得系統存活的一席之地。然則系統資源有限,如若都割據為王,再強勁的CPU也會忙不過來,再龐大的記憶體終會消耗殆盡,再大容量的電池續航終會曇花一現。

3.寫給Android開發者的混淆使用手冊
毫無疑問,混淆是打包過程中最重要的流程之一,在沒有特殊原因的情況下,所有 app 都應該開啟混淆。

4.教你一招最屌的閱讀開源專案的姿勢
相信自從看了我的 GitHub 教程很多人開始愛上了 GitHub,有些人微博也不刷了,知乎也不刷了,改刷 GitHub 了,而且刷的不亦樂乎。這是好事,多接觸多瞭解一些開源專案,對你之後的專案中的開發效率有很大提高。但是,我要告訴你們的是,你們閱讀開源專案的姿勢太 low 了,今天就教你們一招最屌的姿勢。

5.App效能優化淺談
前段時間給公司的小夥伴們進行了關於app效能優化的技術分享,這裡我稍微整理一下也給大家分享一下,關於效能優化這個話題很大,涉及面可以很廣,也可以很深入,本人能力有限,不會給大家講特別難懂,特別底層的東西,都是我們開發能著手去做的點,大家都在講效能優化,但對於專案經驗不夠豐富的朋友很難有一個概念,做優化的時候也會比較茫然,這裡我就給大家指明方向。

6.Android共享元素轉場動畫相容實踐
我們都希望我們的app有自己特殊的地方,轉場動畫就是一個比較好的方式讓使用者記住我們的應用。在Lollipop+ 上的版本實現起來十分的簡單,但是如果想相容低於5.0的版本,你或許需要檢查Android系統的版本來做一些功能上的削減,或者你可以勇敢的手動來實現這個轉換,瘋狂的想法,但是我們可以來這麼嘗試一下。

7.Android自定義ViewGroup神器-ViewDragHelper
這是官方的解釋:在自定義ViewGroup時,ViewDragHelper可以用來拖拽和設定子View的位置(在ViewGroup範圍內)。另外,還提供了一系列的方法和狀態跟蹤。

8.Android ListView與RecyclerView對比淺析--快取機制
RecyclerView是谷歌官方出的一個用於大量資料展示的新控制元件,可以用來代替傳統的ListView,更加強大和靈活。

9.總結下Intent可以開啟的系統項
總結下Intent可以開啟的系統項。

10.Android 爬坑之旅:軟鍵盤擋住輸入框問題的終極解決方案
開發做得久了,總免不了會遇到各種坑。而在Android開發的路上,『軟鍵盤擋住了輸入框』這個坑,可謂是一個曠日持久的巨坑——來來來,我們慢慢看。

受歡迎的類庫
1.AndroidShortcuts
Example app for shortcuts in design library v25.

2.BannerLayoutSimple
支援圖片無限輪播的 BannerLayout,支援自定義小圓點位置以及顯示位置等等,反正支援的挺多的,原始碼也有註釋.

3.SuperTextView
一個功能強大的 TextView,可以滿足日常大部分佈局方式,開發者可已自行組合屬性配置出屬於自己風格的樣式!

4.BubbleAnimationLayout
你不想讓你的應用看起來覺得無聊,是嗎? 新增一些氣泡! 適用於 Android 的氣泡動畫布局,由 Cleveroad 提供您的服務。 這個元件非常實用,適合各種應用程式。 這不僅僅是讓你的應用程式的 UI 脫穎而出,吸引注意。

5.CrazyShadow
為你的 View 新增陰影效果就是一句程式碼的事.

6.MaterialRatingBar
與 Google 系應用設計相同、支援拉伸、修正原生實現諸多問題的星級評分條。可直接替換 RatingBar。

7.RetrofitUtils
RxJava + Retrofit+okhttp 封裝,包含對相同格式請求資料、相同格式返回資料處理,顯示 Material Design 載入 dialog,檔案上傳下載進度展示、全域性異常捕捉。

8.StatusUI
介面狀態和 UI 切換,如 loading, empty, server error 等,非侵入式元件,狀態和 UI 都是可以配置的,也有內建的通用 Status 和預設 UI.

9.HtmlTagHandler
TextView 顯示 html.

10.DialogUtil
material 風格和 ios 風格,可傳入 context 構建,可在任意介面彈出,包含了 loading,alert,單選和多選對話方塊,輸入對話方塊,actionSheet 和 bottomSheet.不知道是 bu 是東半球最全?

完整專案
1.一個 Dribbble 第三方客戶端
Dribbble 是一個優秀的設計師網站,這裡有上萬優秀設計師為移動開發人員提供了海量精美的 UI 資源。Dribbble 很早就開放了 API,也有許多優秀的第三方客戶端,本著學習的目的,我在課餘時間寫了這個還很粗糙的客戶端。目前的功能還很簡陋,使用者體驗也不是很完善,主要是因為 Dribbble 的 API 伺服器在國外,國內載入資源很慢。不過,我會慢慢更新的,一點一點把它變得更好。

主要使用的技術和開源專案:

  1. MVP 設計模式。
  2. RxJAVA
  3. Retrofit
  4. OkHttp
  5. Glide

todo list:

  1. 使用資料庫離線快取,節省客戶端流量。
  2. 使用 palette 動態改變背景色,增加美觀性。
  3. 使用 Dribbble 提供的 Ouath2 認證允許使用者登入,並對每個設計進行評論,點贊,收藏等功能。
  4. 改善圖片載入速度,提供友好的使用者反饋。
  5. 發現並消滅 BUG,提高軟體使用的穩定性。

效果預覽圖:

《Android 經驗分享》週刊第 7 期

《Android 經驗分享》週刊第 7 期
screener_20161029(00_13_49).jpg

《Android 經驗分享》週刊第 7 期
screener_20161029(00_14_23).png

《Android 經驗分享》週刊第 7 期
screener_20161029(00_15_02).png

週刊外話
1.談一談我在阿里的成長
前幾天受阿里通訊的同事邀請,分享了一個關於成長的話題。其實我不太熱衷於分享此類話題,作為一個技術人,分享那些沒有技術乾貨的內容總感覺有些怪怪的。但最後還是擬下了這個話題 ——《談一談我在阿里的成長》,所以本文主要是對分享的 PPT 做簡述。

2.技術乾貨大彙總
包含:個人android 技術乾貨,問題深度總結,FrameWork原始碼解析,外掛化研究,最新開源專案推薦,TV開發.

更多精彩文章請關注微信公眾號"Android經驗分享":這裡將長期為您分享Android高手經驗、中外開源專案、原始碼解析、框架設計和Android好文推薦!

《Android 經驗分享》週刊第 7 期
掃一掃獲取乾貨

相關文章