Android 博客周刊13期

摘要

Android博客周刊 收錄最近一周國內外熱門技術博客以及優秀的類庫。每周一準時更新。

作者: Jomeslu 地址:Android博客周刊

轉載請在開頭註明作者詳細信息和本文出處。

新聞

1.Android Studio 2.0 穩定版

Android Studio 2.0 是 Android 平台上構建高質量、高效應用的最快方法,包括手機、平板、Android Auto、Android Wear 和 Android TV 在內。作為來自 Google 的官方 IDE,Android Studio 包括你構建應用時需要的所有東西,包括代碼編輯器、代碼分析工具、模擬器以及更多。

2.Android M迎來爆發:安裝率已增至4.6%

4月6日消息,在今年1月份,iOS 9裝機率已經飆至75%,這讓安裝率只有0.7%的Android M無言以對。現如今,幾個月過去了,Android M的狀況有沒有改善呢?下面這個消息應該會讓谷歌感到欣慰。

3.Android Auto新增18個國家 中國依舊缺席

自2014年谷歌I/O開發者大會正式發布安卓智能車載系統Android Auto以來,在車載系統的市場爭奪中,Google一直努力在Android Auto上提高自己覆蓋的國家數量。 今日 Google 通過一個很 Cool 的方式,用國旗代替冗長的文字

4.谷歌醞釀將蘋果Swift作為安卓APP主要開發語言

安卓操作系統的軟體開發語言是Java,而在過去幾年中,有關Java的版權,谷歌(微博)和甲骨文之間發生了長期的訴訟。最新外媒消息稱,谷歌正在考慮將蘋果開發的Swift作為未來安卓軟體開發的「一級」語言,此外Facebook、Uber等公司也開始越來越重視Swift的使用。

國外博客

1.Crunching RxAndroid?

n the previous part of this series, we dissected a little bit of the core RxJava framework, with the idea of learning the most we could about the mechanics of the reactive programming on Android and how to create and use custom operators.

2.Android Performance Patterns: Rescue tips

Apps nowadays are all about fancy animations, complex transitions and custom views, and the user experience must be intuitive and similar as possible in any device. These patterns gonna help you build an app that』s smooth, responsive

3. Presenters dont need lifecycle events

I have been asked several times why Presenters in Mosby (MVP library) don』t have lifecycle callback methods like onCreate(Bundle), onResume() etc. Also the awesome guys over at SoundCloud have published a library called LightCycle that helps break logic out of Activity

4.Share the settings with the whole team(Android Studio)

Even though the stereotype goes against that, developers tend to be social creatures?—?at least to the extent of (having to?) work in a team. That could be a work team that sits in the same room (or building)

5.Architecture and Code quality tools for better android development

In this post i will tell you about some problems i faced with coding , organizing and also collaborating with team members and also some valuable tools.

6.compile 『android:best:1.1.1』

After reading lots of blogs, watching conferences/videos and from my own developing career I quickly came up with this list of libraries and resources that are probably used most often and approved by the community (also official ones from Google).

國內博客

1.Retrofit分析-漂亮的解耦套路

萬萬沒想到Retrofit會這麼火,在沒看源碼之前,我簡單的認為是因為它跟OkHttp同出一源(Square),所以才會炒的那麼熱。又或者是因為它能支持RxJava,所以火上澆油,一發不可收拾。

2.Android 插件化原理解析——插件載入機制

上文 Activity生命周期管理 中我們地完成了『啟動沒有在AndroidManifest.xml中顯式聲明的Activity』的任務;通過Hook AMS和攔截ActivityThread中H類對於組件調度我們成功地繞過了AndroidMAnifest.xml的限制。

3.Android移動應用開發中常見的經驗技巧總結

要求:1、app中使用webview訪問具體網站的內容,但是app與伺服器的溝通是使用HttpUrlConnection來完成。2、webview訪問時不需要再次登陸,繼承app的登陸狀態。

4.Airbnb:我們的安卓客戶端是如何使用 RxJava 的

Reactive 編程和 RxJava 是最近常常引起強烈爭論的話題,爭論過程中問題很多,不確定性也很多。本次演講我們會討論,在 Airbnb 的客戶端里,我們是如何採納這些範式和技術,包括動力,實現的困難,和這一路走來的經驗教訓。我們還會看些產品的代碼.

5.Android MultiDex實踐:如何繞過那些坑?

Android應用65k方法數的限制一直為廣大開發者所詬病,在應用功能越來越豐富、各種開源庫越來越多的今天,65k方法數瓶頸儼然已是一大絆腳石。至於怎麼解決這個問題,業內有包括插件化在內的一些方案,我們今天的重點是Android官方給出的這個方案,MultiDex。

6.理解Android進程創建流程

本文要介紹的是進程的創建,先簡單說說進程與線程的區別。進程:每個App在啟動前必須先創建一個進程,該進程是由Zygote fork出來的,進程具有獨立的資源空間,用於承載App上運行的各種Activity/Service等組件。

7.[Android]電量優化之app演算法

針對Android的電量優化,應該是很多開發者最關心的幾大問題之一。 最近我正在看相關的資料,希望跟大家一起探討學習。 關於電量,我們最需要處理的問題就是兩個方向: (1)第三方APP和系統本身是如何獲取電量值並展示的?我們能否針對他們的演算法做適度優化?

8.Android按鍵事件傳遞流程(一)

做Android開發的少不了對觸摸、按鍵事件進行處理,對於手機來說,主要是手勢移動、觸摸按下等,而TV主要通過遙控器、按鍵操作,按鍵事件不同於觸摸事件,必須先獲得焦點,然後才能移動、選擇。

9.Android按鍵事件傳遞流程(二)

由3.2和4.5.4節可知,當InputDispatcher通過服務端管道向socket文件描述符發送消息後,epoll機制監聽到了I/O事件,epoll_wait就會執行返回發生事件的個數給eventCount,主線程開始執行epoll_wait後面的代碼

10.GRADLE構建最佳實踐

隨著谷歌對Eclipse的無情拋棄和對Android Studio的日趨完善,使用gradle構建Android項目已經成為開發者的一項必會良技。那麼,問題來了,採用什麼樣的姿勢才能讓項目開發構建過程高潮迭起,精彩不斷呢?

11.Android 自定義View高級特效,神奇的貝塞爾曲線

效果圖中我們實現了一個簡單的隨手指滑動的二階貝塞爾曲線,還有一個複雜點的,穿越所有已知點的貝塞爾曲線。學會使用貝塞爾曲線後可以實現例如QQ紅點滑動刪除啦,360動態球啦

12.[譯]LinkedIn的安卓數據管道是如何設計的

去年,著手為LinkedIn新的旗艦級手機應用做移動基礎設計時,我們打算徹底地重新考慮數據管道。數據管道將應用程序和服務之間底層的複雜數據流程抽象成API供應用程序的所有組件使用。

13.Android註解與反射機制

但是肯定很多人都只是知道這行代碼是重寫父類方法的時候會用到,但並不知道它是什麼。 其實這就是一種註解,可以理解成它標識了變數或者方法的某種屬性。 那麼看看它的具體實現

14.RxJava 官方文檔中文翻譯

ReactiveX是Reactive Extensions的縮寫,一般簡寫為Rx,最初是LINQ的一個擴展,由微軟的架構師Erik Meijer領導的團隊開發,在2012年11月開源,Rx是一個編程模型,目標是提供一致的編程介面,幫助開發者更方便的處理非同步數據流

15. Android 透明狀態欄實現方案

透明狀態欄(Translucent Bars)是從 Android 4.4 開始出現的,到了 Android 5.0 的時候,Android 又推出了沉浸模式(Immersive Mode),於是混淆了不少人。其實像QQ、QQ音樂這種效果的叫做透明狀態欄;而沉浸模式多用於視頻或閱讀類 APP .

類庫

1.JJSearchViewAnim

一個炫酷的SearchView搜索動畫庫

2.NavigationTabBar

酷炫多彩的互動導航標籤欄。

3.URLLinkView

通過一個URL地址展示標題,圖像和描述

4.multiline-collapsingtoolbar

CollapsingToolbarLayout 拉伸與收縮 處理多行title,

5.FlexLayout

直接在layout配置表達式,不需要寫java 代碼

6.DragIndicatorView

帶拖拽效果的紅點提示控制項

7.RemoteControll

通過手機端,來超控電腦的實現

8.pop

一個快速很容易建立一個dialog的類庫

9.FragmentNavigator

一個可以幫我更好更容易的管理Fragment。避免Fragment一些坑

10.AndroidOnboarder

輕量快速地建立一個歡迎引導頁

11.android-summernote

離線的HTML編輯器的APP

12.NaturalDateFormat

Material Design格式日期庫。

13.android-vision

Android 臉部識別官方demo

參考視頻

1.Android N and Coffee with Googler

Google工程師介紹android N

2.The Zen of IntentService.

討論什麼時候使用IntentService.

3. Is your app in the Google index

優化搜索速度,提高用戶體驗。

博外話

1.一名全棧設計師的Mac工具箱(設計,開發,效率)

架構師的眼裡必備的工具

2.程序員應該接外包嗎?

聊聊程序員接外包這件事。

3.七年iOS工作經驗的我為什麼放棄了iOS而選擇了Android

兩個平台的對比,個人意向抉擇。
推薦閱讀:

安卓手機可以裝iOS系統嗎?
學習 Android 開發,有什麼書籍值得推薦?
過度依賴框架有什麼不好?
Vivo Xplay5要配備6G內存。Android系統真的需要這麼大的內存嗎?
Android Studio項目應該提交哪些文件到GitHub上?

TAG:Android开发 | Android | Android应用 |