Android博客周刊第72期

lihongfei 7年前發布 | 22K 次閱讀 Java 安卓開發 Android開發 移動開發

新聞

1.Android 大神 Jake Wharton 宣布入職 Google

上個月我們報道了Android 大神 Jake Wharton 宣布從 Square 離職的消息,當時 Jake Wharton 尚未透露他的下一步動向,不過有網友猜測去 Google 的可能性比較大,原因是Google 近年來時常有邀請他去做一些分享,包括今年的 Google IO 大會上,也有邀請去做一個關于 Kotlin 的分享。

2.Android 8.0正式版暫定本月8月21日發布

Android O正式版何時推送,成為目前不少安卓用戶關注的重點,從時間安排上來看,本月谷歌一定是會推出的。爆料大神evleaks剛剛在自己的推ter上爆料稱,Android 8.0正式版預計會在下下周發布,準確時間極有可能是8月21日。

3.Android 8.0有望于8月21日正式登陸Pixel/Nexus

Google 已經向放出了第四和最后一個既定的 Android 8.0 開發者預覽版本,接下來就看該公司何時向受支持的 Pixel 和 Nexus 設備推送最終正式版本了。上個月的時候,該公司披露其計劃在 2017 年 3 季度向 AOSP

國外博客

1. SOLID Android analytics with RxJava2

In this article Aris Papadopoulos will explain how to properly create an Analytics system while following the SOLID principles and using RxJava2 for the heavy lifting.

2. Exploring Nearby Connections 2.0

The new API for Nearby Connections greatly improves upon the the first version by having offline support, higher-bandwidth operations and lower latency. Caren Chang shares some examples of how to use this new API.

3. How to make complex requests simple with RxJava in Kotlin

Intersting post by Tamás Kozmér how to make complex API requests simple using RxJava and Kotlin. You will learn how to create a model constructed from multiple requests.

4. Save your backend from a responsive UI using RxJava

In this article by Ricardo Belchior you'll learn how to buffer certain actions (and thus taking off load from your backend) using RxJava.

5. Kotlin From Scratch: Variables, Basic Types, and Arrays

In this first tutorial in the Kotlin From Scratch series, you'll learn about the language basics: comments, variables, simple types, arrays, and type inference.

6. Two-Way Data Binding on Android: Observing Your View with XML

Great article by the guys over at Big Nerd Ranch about leveraging BindingAdapters to create a two way data binding with XML.

國內博客

1.5分鐘教你打造一個秒開的 Android App

近日在開發過程中,發現每次點擊app從桌面啟動都有一個在桌面明顯的等待時間,機型越低端的越明顯,冷啟動優化看來已經勢在必行,所以怒而一頓研究再解決之。話不多說先上優化前后效果圖

2.HenCoder Android 開發進階:自定義 View 1-5 繪制順序

前面幾期講的是「術」,是「用哪些 API 可以繪制什么內容」。到上一期為止,「術」已經講完了,接下來要講的是「道」,是「怎么去安排這些繪制」。這期是「道」的第一期:繪制順序。Android 里面的繪制都是按順序的,先繪制的內容會被后繪制的蓋住。比如你在重疊的位置先畫圓再畫方

3.Android中ARSC二進制文件修改工具AXMLEditor解析

通常我們在破解apk的時候,第一步肯定先反編譯程序文件,然后開始修改代碼和資源文件,最后回編譯簽名即可。但是現在有些apk做了一定策略,或者apk包如果很大都會導致回編譯失敗,而回編譯如果失敗,對于修改就沒意義了。

4.安卓 MVVM 之禪

我之前在多個 Android 應用中采用過多種途徑來實現 MVP 設計模式,并且過程中經歷了反復迭代。在歷經多個項目后,我決定嘗試以 Android Data Binding 類庫為基礎來實現 MVVM。這次嘗試仿佛讓我陷入了 Android 編程的極樂世界一般。

5.Android7.0增量更新完整方案及踩坑之旅

增量更新可以幫助我們減少用戶更新apk所耗費的流量。具體的做法是,在老版本apk和新版本apk中,差分出這兩個apk文件之間,不同的部分,得到一個patch(補丁)文件。比如我們之前的apk是10M,新的apk是12M,一般情況下,差分出來的補丁文件的大小在2M左右。

6.編寫高質量代碼的思考

最近在看《代碼大全》,可以說是一本軟件開發的百科全書,特別厚,但是干貨也很多。平時寫代碼,代碼規范是一個最低的要求(很多老代碼連最低要求都達不到),為什么要這樣規定代碼要這么寫,而不是那么寫?

7.微信 Mars Android Sample 源碼分析

整個 Sample 提供了以下功能: 基于TCP長連接的聊天室體驗。 數據通信成功率、耗時、流量的展示。 網絡狀況檢測結果展示。 一、本地運行 Server 端 具體如何運行 Server 端,參照官方wiki:Mars Sample 使用說明 二、修改 Android Sample 下面說下Android 端該如何修改源碼連接到本地服務器

8. Kotlin應用于項目踩過的坑

在谷歌宣布Kotlin成為一級開發語言的時候就開始學習kotlin,現在已經在項目中開發使用了。我目前負責的項目老代碼全是Java,我不可能全轉成kotlin,所以即便使用了kotlin,也只是在新建文件的代碼里使用,老代碼繼續用java。kotlin的好處就是完全兼容java,java調用kotlin,kotlin基本上無阻礙。官網的話就是java和kotlin 100%兼容。

9.OkHttp 封裝學不好,是漏了哪些基礎知識?

在講 OkHttp 封裝之前,我想整理下基礎知識,一直對網絡編程沒有系統學習過,借著這大好時機,想認真學習下 OkHttp 的請求與響應,OkHttp 基本使用以及前后端交互,Okhttp 封裝等,一看就有好多要學啊,是的,真的很多,不過沒關系,整理起來就對 Okhttp 有了更加系統的認識,這是我想要的效果。

10.Easy Clean architecture on Android

在我這幾年的學習和成長中,深刻的意識到搭建一個Android應用架構是件非常痛苦的事,它不僅要滿足不斷增長的業務需求,還要保證架構自身的整潔,這讓事情變得非常具有挑戰,但我們必須這樣做

11.Android OpenGL開發實踐 - GLSurfaceView對攝像頭數據的再處理

隨著移動網絡的快速發展,移動端網絡速度慢和花費較高的瓶頸逐漸消失,直播和視頻隨著網絡的發展快速興起。在直播和視頻和風口之下,如何獲取移動端攝像頭數據、如何對攝像頭數據進行再處理以及如何保存處理后的數據成為移動端視頻開發者的必修課。

12.一種粗暴快速的Android全屏幕適配方案

由于Android碎片化嚴重,屏幕適配一直是開發中較為頭疼的問題。面對市面上五花八門的屏幕大小與分辨率,Android基于dp與res目錄名稱來適配的方案已無法滿足一次編寫全屏幕適配的需求.

13.Android O中的Seccomp過濾器

在運行 Android 的設備中,強制執行 Android 安全模型的重任交給內核處理。由于安全團隊已加固 Android 用戶空間,隔離進程并削弱進程的權限,因此,越來越多的安全攻擊將其焦點轉到內核上。系統調用是攻擊者攻擊內核的常用方式之一。

類庫

1.VasSonic

騰訊開源一款快速啟動首屏websites的框架

2.AndPermission

android運行時權限,支持在任何地方申請權限

3.android-clean-architecture-boilerplate

一個使用clean architecture 的工程APP

4.AutoFlowLayout

自定義ViewGroup,實現多功能流式布局與網格布局

5.emptyview

一個集成loading, error, empty 狀態的View

6.Morphing-Material-Dialogs

Material dialog meets morphing animation

7.EasyPopup

對 PopupWindow 的封裝。可指定相對于 anchor view 各個方位彈出,設置背景變暗,指定 ViewGroup 背景變暗等特性。

8.QBox

小秋魔盒(QBox)是一個生活工具 App

9.ArcSeekBar

Curved Android SeekBar

10.PlayPauseView

PlayPauseView 讓播放、暫停按鈕優雅的過渡

11.mask-edittext

一個格式自動識別的庫

12.Android-Architecture

該項目結合 MVP 與 Clean 架構思想,探索在 Android 項目上的最佳實踐

13.MaterialStepperView

一個 Material Design 的步驟Steppers 控件

參考視頻

1.吳恩達Deeplearning.ai課程學習全體驗:深度學習必備課程

8 月 8 日,吳恩達正式發布了 Deepleanring.ai——基于 Coursera 的系列深度學習課程,希望將人工智能時代的基礎知識傳播到更多人身邊。一周過去后,許多人已經學完了目前開放的前三門課程。這些新課適合哪些人,它是否能和經典的《機器學習》課程相比呢?讓我們先看看這篇先行體驗。

2.Google最新開發者新聞快報

Google最新開發者新聞快報

面試題

1.招聘面試的套路與原則

進入八月,開啟了夏季的社招季。近期集中的招聘、面試,形成了一些心得體會,或者說叫套路,而隱藏在這些套路背后的其實是一些更通用的原則。所以,這一篇其實是寫給招聘者的,不過,所有的應聘者也有可能有成為招聘者的一天,也可以參考。

博外話

1.機會主義重構-Martin Fowler

從我開始談論和撰寫關于重構專題的一開始,人們就問我如何將重構納入更廣泛的軟件開發過程。 重構到底應不應該被當做軟件開發生命周期的一個階段,如果應該,那么要在一個迭代中給重構這個階段分配多大比例呢?

2.如何閱讀計算機科學類的書

作為一個研發工程師,無論你是否喜愛閱讀,相信你都一定讀過不少關于計算機技術的書籍。這其中不乏《21天學會JAVA》這樣的語言入門書籍,也有《算法導論》這樣的專題書籍,也有《人月神話》這樣關于軟件管理學的實用性的書籍。

 

來自:http://www.androidblog.cn/index.php/Index/detail/id/82

 

 本文由用戶 lihongfei 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!