Android
Android P
今年是Android發(fā)布十周年的日子,Android P Beate 版如期在大會(huì)上發(fā)布截歉,Android P更加注重人工智能方面的探索,此版本更新有以下三個(gè)方面:Intelligence(智力)、Simplicity(簡(jiǎn)單)歧蒋、Digital wellbeing(數(shù)字健康)。
更新支持:首批支持升級(jí)到P的設(shè)備有9家:Google、Nokia谜洽、vivo萝映、oneplus、小米阐虚、Sony序臂、Essential(Android之父推出產(chǎn)品)、OPPO实束。
Intelligence
1. Adaptive Battery
電量?jī)?yōu)化奥秆。基于人工智能根據(jù)用戶習(xí)慣咸灿,減少30%的CPU喚醒吭练,Android內(nèi)置的機(jī)器學(xué)習(xí)系統(tǒng),能知道你接下來何時(shí)使用某些軟件以合理分配電量析显。
2. Adapter Brightness
亮度調(diào)節(jié)優(yōu)化鲫咽。根據(jù)用戶習(xí)慣,在不同場(chǎng)景下調(diào)節(jié)不同亮度谷异。
3. App Actions分尸。
預(yù)測(cè)用戶使用應(yīng)用,根據(jù)用戶習(xí)慣歹嘹,在合適場(chǎng)景顯示用戶可能打開的應(yīng)用箩绍。開發(fā)時(shí),只需加入actions.xml到應(yīng)用尺上。
根據(jù)不同的使用習(xí)慣以及相關(guān)性高低材蛛,App Actions 呈現(xiàn)給用戶不一樣的內(nèi)容,并且支持多種谷歌以及 Android 服務(wù)平臺(tái)怎抛,包括谷歌搜索應(yīng)用 (Google Search App)卑吭、Play Store、谷歌智能助理 (Google Assistant) 以及啟動(dòng)器 (launcher)马绝。App Actions 很快就能和各位開發(fā)者見面豆赏。您可同時(shí)在應(yīng)用中構(gòu)建一個(gè) Conversational Action 作為輔助用途,它適用于任何支持谷歌智能助理 (Google Assistant) 服務(wù)的設(shè)備富稻,如揚(yáng)聲器和智能顯示器掷邦。這兩種類型的 Actions 均使用一套共用的意圖類別。
4. slices
讓開發(fā)者定義用戶界面的交互式片段椭赋。(在你搜索時(shí)抚岗,會(huì)對(duì)你進(jìn)行推薦,如:搜索職位哪怔,給你推薦找工作App宣蔚;在你搜索地址時(shí)廷痘,將在該地的照片推送給你。)
Slices 提供一系列 UI 模板件已,幫助開發(fā)者在應(yīng)用中呈現(xiàn)豐富的動(dòng)態(tài)交互式內(nèi)容笋额,支持所有 Android 系統(tǒng)以及提供谷歌服務(wù)的平臺(tái)。Slices 可以展現(xiàn)實(shí)時(shí)數(shù)據(jù)篷扩、滾動(dòng)內(nèi)容兄猩、內(nèi)聯(lián)行為以及與您應(yīng)用相連的深度鏈接,因此從播放音樂到檢查預(yù)約更新鉴未,用戶可以做任何事情枢冤。Slices 也可以包括像是開關(guān)或者滑塊一類的互動(dòng)控制元素。從今天開始創(chuàng)建您的 Slices铜秆,很快它們就會(huì)呈現(xiàn)在用戶眼前淹真。
5. ML Kit
通過Firebase提供的API。ML Kit是建立在TensorFlow Kite基礎(chǔ)上连茧,并針對(duì)移動(dòng)設(shè)備進(jìn)行優(yōu)化的庫核蘸。
Simplicity
1. New System Navigation
新的系統(tǒng)導(dǎo)航欄,引入了全新的手勢(shì)操作啸驯。取消了傳統(tǒng)三大按鍵中的多任務(wù)鍵客扎,直接按住 home 鍵上滑打開多任務(wù),然后 home 鍵按鈕變成了類似 iPhone X 的小白條罚斗,左右滑動(dòng)可以來回查看多個(gè)應(yīng)用徙鱼,底部一欄就是建議你使用的應(yīng)用。在多任務(wù)狀態(tài)下再次上滑可以看到所有應(yīng)用针姿。
- Quick settings袱吆。
- Volume controls。
- Betters screenshots距淫。
- Rotation confirmation绞绒。
- Crash dialogs。
- Notifications溉愁。
- Status bar处铛。
- Work profiles饲趋。
Digital wellbeing
- Dashboard拐揭。顯示你使用應(yīng)用的詳細(xì)統(tǒng)計(jì)信息。
2. Updated Do Not Disturb
期間不顯示電話奕塑、短信堂污、通知,可以通過設(shè)置接收重要人信息龄砰。
- App timer盟猖。
- Wind down讨衣。
Android開發(fā)生態(tài)
Jetpack
在Keynote上發(fā)布了 Android Jetpack,幫助提升應(yīng)用開發(fā)速度式镐。作為下一代的 Android 組件反镇,Android Jetpack 將支持庫向后兼容和立即更新的優(yōu)點(diǎn)融合到更多組件中,讓開發(fā)者能夠快速輕松地開發(fā)出擁有卓越性能的高質(zhì)量應(yīng)用娘汞。簡(jiǎn)單來說就是官方的組件歹茶、工具和架構(gòu)庫。此庫完美兼容Kotlin你弦,主要有4個(gè)模塊構(gòu)成:WorkManager惊豺、Paging、Navigation 及 Slices禽作。
Navigation——導(dǎo)航組件
Navigation是 單Activity多Fragment 開發(fā)模式下的頁面跳轉(zhuǎn)的導(dǎo)航組件尸昧。官方文檔介紹如下:
利用導(dǎo)航組件對(duì) Fragment 的原生支持,可以獲得架構(gòu)組件的所有好處(例如生命周期和 ViewModel),同時(shí)讓此組件為您處理 FragmentTransaction 的復(fù)雜性旷偿。此外烹俗,Navigation組件還可以讓您聲明我們?yōu)槟幚淼霓D(zhuǎn)場(chǎng)。它可以自動(dòng)構(gòu)建正確的“向上”和“返回”行為萍程,包含對(duì)深層鏈接的完整支持衷蜓,并提供了幫助程序,用于將導(dǎo)航關(guān)聯(lián)到合適的 UI 小部件尘喝,例如抽屜式導(dǎo)航欄和底部導(dǎo)航磁浇。
和其他的Fragment管理庫(如Fragmentation)相比,Navigation優(yōu)勢(shì)明顯:
- 專業(yè)的 開發(fā)/維護(hù) 和 測(cè)試 團(tuán)隊(duì)朽褪,保證代碼的質(zhì)量及穩(wěn)定性置吓;
- AndroidStudio IDE專屬支持,包括可視化的編輯界面缔赠,和通過鼠標(biāo)拖拽對(duì)Fragment的導(dǎo)航管理功能衍锚;
- 對(duì)ViewModel,Lifecycle等 官方架構(gòu)組件 的支持嗤堰;
- 官方針對(duì)遷移至Navigation 的流程提供了詳細(xì)的文檔戴质;
- 更多Android開發(fā)者會(huì)使用它,您可以在網(wǎng)上獲取非常詳盡的學(xué)習(xí)資料踢匣;
- Google爸爸官方出品告匠,無腦支持。
Paging——分頁組件
官方對(duì)于 Paging 的相關(guān)介紹:
應(yīng)用中呈現(xiàn)的數(shù)據(jù)可能非常大离唬,這就導(dǎo)致加載的開銷比較大后专,因此,避免一次下載输莺、創(chuàng)建或呈現(xiàn)過多數(shù)據(jù)就顯得非常重要戚哎。 分頁組件 讓您可以輕松加載和呈現(xiàn)大型數(shù)據(jù)集裸诽,同時(shí)在您的 RecyclerView 中進(jìn)行 快速、無限滾動(dòng)型凳。它可以從本地存儲(chǔ)和/或網(wǎng)絡(luò)加載 分頁數(shù)據(jù)丈冬,并讓您能夠定義內(nèi)容的加載方式。此組件原生支持 Room甘畅、LiveData 和 RxJava殷蛇。
優(yōu)勢(shì)也是相當(dāng)明顯:
- 專業(yè)的 開發(fā)/維護(hù) 和 測(cè)試 團(tuán)隊(duì),保證代碼的質(zhì)量及穩(wěn)定性橄浓;
- 原生支持Room粒梦、LiveData 和 RxJava;
- 官方針對(duì)分頁庫 遷移至Paging 的流程提供了詳細(xì)的文檔荸实;
- 更多Android開發(fā)者會(huì)使用它匀们,您可以在網(wǎng)上獲取非常詳盡的學(xué)習(xí)資料;
- Google爸爸官方出品准给,無腦支持泄朴。
WorkManager
WorkManager是一個(gè)很新穎的庫,它的作用一句話概述就是:
管理一些要在后臺(tái)工作的任務(wù), ——即使應(yīng)用沒啟動(dòng)也能保證任務(wù)能被執(zhí)行露氮。
還在為使用RxJava 和 AsyncTask 在后臺(tái)線程干活, 但是應(yīng)用一被殺或被關(guān)閉, 這些工具就不執(zhí)行了而苦惱嘛祖灰?WorkManager不是, 它在應(yīng)用被殺, 甚至設(shè)備重啟后仍能保證你安排給他的任務(wù)能得到執(zhí)行。
- 易于安排:您可以在 特定條件 下啟動(dòng)任務(wù)畔规,同時(shí)局扶,任務(wù)之間可以相互鏈接,這意味著叁扫,你可以將任務(wù) 串行 或者 并行 執(zhí)行三妈。
- 易于取消:您擁有對(duì)任務(wù)執(zhí)行的控制權(quán),通過API您可以輕松取消計(jì)劃任務(wù)莫绣。
- 易于查詢:您可以將任務(wù)進(jìn)度展示在各種各樣的UI上畴蒲。
- 支持所有Android版本!就像描述的一樣对室,各個(gè)Android版本下模燥,WorkManager的API都是一致的。
Slices
Slices 提供了一系列 UI 模板掩宜,幫助開發(fā)者在應(yīng)用中呈現(xiàn)豐富的動(dòng)態(tài)交互式內(nèi)容蔫骂,支持所有 Android 系統(tǒng)以及提供谷歌服務(wù)的平臺(tái) 。
Kotlin
Play Store 中用 Kotlin 開發(fā)的應(yīng)用在去年增至 6 倍锭亏,在高級(jí)開發(fā)者中有 35% 的人選擇使用 Kotlin 進(jìn)行開發(fā)纠吴,而且這個(gè)數(shù)字正在逐月遞增。
- Google會(huì)繼續(xù)改善 Kotlin 在支持庫慧瘤、工具戴已、運(yùn)行時(shí) (runtime)、文檔以及培訓(xùn)中的開發(fā)體驗(yàn)锅减。
- 今天發(fā)布的Jetpack中包含Android KTX力圖繼續(xù)優(yōu)化Kotlin開發(fā)體驗(yàn)糖儡。
- 繼續(xù)改善 Android Studio、Lint 支持以及 R8 優(yōu)化中的工具對(duì)Kotlin的支持怔匣;
- 對(duì) Android P 中的運(yùn)行時(shí) (Android Runtime) 進(jìn)行微調(diào)握联,以此加快 Kotlin 編寫的應(yīng)用的運(yùn)行時(shí)間;
- 在 “谷歌開發(fā)者專家項(xiàng)目” 內(nèi)為 Kotlin 專門設(shè)立了一個(gè)分塊每瞒;
- 發(fā)布 Kotlin 版本的《API 參考文檔》金闽。
Android Studio
發(fā)布了Android Studio 3.2 金絲雀版,3.2主要更新如下:
- 引入了 Android Jetpack 支持工具剿骨,包括一款視覺導(dǎo)航編輯器以及全新代碼重構(gòu)工具代芜。
- 還包含了可用于創(chuàng)建全新的 Android App Bundle 格式的構(gòu)建工具。
- 用于快速啟動(dòng) Android 模擬器的快照功能 (Snapshot)浓利。
- 給下載及安裝包瘦身的新 R8 優(yōu)化器挤庇。
- 以及用于測(cè)量應(yīng)用對(duì)電池續(xù)航影響的新電量分析工具 (Energy Profiler)。
Android App Bundle
向 Android 引入新 app 模式贷掖。利用全新發(fā)布格式 —— Android App Bundle嫡秕,大幅度減少應(yīng)用體積。現(xiàn)在您只須在 Android Studio 中構(gòu)建一個(gè)應(yīng)用束 (app bundle)苹威,就可以將應(yīng)用所需的全部?jī)?nèi)容 (適用于所有設(shè)備) 都涵蓋在內(nèi):所有語言昆咽、所有設(shè)備屏幕大小、所有硬件架構(gòu)牙甫。接著潮改,在用戶下載您的應(yīng)用時(shí),Google Play 的新動(dòng)態(tài)交付只會(huì)傳輸適用于用戶設(shè)備的代碼和資源腹暖。人們?cè)?Play Store 上看到的安裝包體積更小汇在,下載速度也越快,同時(shí)也節(jié)省了設(shè)備存儲(chǔ)空間脏答。
Android App Bundle 支持模塊化糕殉,因此開發(fā)者可以隨時(shí)按需交付功能,而不是僅限在安裝過程中殖告。您可以在最新發(fā)布的 Android Studio 金絲雀版本中構(gòu)造動(dòng)態(tài)功能模塊阿蝶。
Android 應(yīng)用生態(tài)
Google Play
Play Console 的新功能和報(bào)告能夠幫助您提升應(yīng)用性能并擴(kuò)展業(yè)務(wù)。點(diǎn)擊閱讀有關(guān)控制面板黄绩、統(tǒng)計(jì)羡洁、Android vitals、發(fā)布前報(bào)告爽丹、用戶獲取報(bào)告以及訂閱面板的相關(guān)改進(jìn)項(xiàng)筑煮。您也可以使用我們新的發(fā)布格式 —— Android App Bundle辛蚊,上傳、測(cè)試以及發(fā)布應(yīng)用真仲。
Instant App
作為Google應(yīng)對(duì)類似小程序類應(yīng)用的方案袋马,Instant App還在更新。好像影響還不大秸应,期待繼續(xù)變好吧虑凛。國(guó)內(nèi)現(xiàn)在影響不到,日后再學(xué)软啼。
今天宣布所有游戲開發(fā)者都能構(gòu)建即時(shí)應(yīng)用 (instant app) Google Play Instant∩5現(xiàn)在 Google Play Instant 支持全球超過 10 億臺(tái)設(shè)備。
為了簡(jiǎn)化即時(shí)應(yīng)用的開發(fā)祸挪,我們將在這周發(fā)布對(duì)應(yīng)的 Unity 游戲引擎插件服務(wù)锣披,以及與 Cocos Creator 的 beta 版本集成。最近匕积,我們開始測(cè)試 Google Play Instant 與 AdWords 的兼容性盈罐,讓人們能直接通過通用廣告活動(dòng) (Universal App campaigns) 覆蓋的所有渠道里的廣告直接試玩游戲。
Android Things
在大會(huì)前一天闪唆,Google正式發(fā)布了 AndroidThings 的1.0版本盅粪。Android Things 作為 Google 旗下的一款操作系統(tǒng) (OS),能夠幫助開發(fā)者規(guī)那睦伲化開發(fā)和維護(hù)物聯(lián)網(wǎng)設(shè)備票顾。
平臺(tái)現(xiàn)添加對(duì) 3 種新系統(tǒng)模組 (System-on-Modules 或 SoMs) 的支持,并承諾在接下來的三年中提供長(zhǎng)期支持帆调,同時(shí)讓開發(fā)者自行決定是否需要擴(kuò)展支持奠骄,幫助他們更容易地設(shè)計(jì)出原型并推向市場(chǎng)。而同時(shí)推出的 Android Things 控制臺(tái) (Android Things Console) 更是將簡(jiǎn)化產(chǎn)品開發(fā)推向極致番刊,幫助開發(fā)者定期獲取 Google 最新穩(wěn)定性修復(fù)包以及安全升級(jí)包含鳞,從而實(shí)現(xiàn)從發(fā)布、管理到設(shè)備更新的無縫連接芹务。
Android Wear
發(fā)布了新的 Wear OS的 開發(fā)者預(yù)覽版蝉绷,為 Wear OS 帶來 Android P 平臺(tái)的心功能。主要進(jìn)行了一下更新:
- 全新省電模式
- 更多功耗優(yōu)化枣抱,包括藍(lán)牙連接斷開時(shí)關(guān)閉 Wi-Fi 以及 后臺(tái)活動(dòng)與前臺(tái)服務(wù)限制
- 通知智能回復(fù)
AR Core
參考文獻(xiàn)
- 任玉剛寫作平臺(tái) 感謝剛哥寫作平臺(tái)的高質(zhì)量文章
- Android cn 官網(wǎng)