歷經(jīng)一年多的開發(fā)和數(shù)月以來開發(fā)者與早期用戶的反復(fù)測試擅编,Android 8.0 Oreo 終于正式面向全球發(fā)布蜕猫。Android 8.0 為用戶帶來了諸如畫中畫 (Picture in picture)、自動填充 (Autofill)腹备、免安裝應(yīng)用 (Instant Apps)衬潦、Google Play 保護(hù)機(jī)制 (Google Play Protect) 以及更快的啟動時間等諸多新功能。
我們會在今天向 Android 開放源代碼項(xiàng)目(AOSP)的每一位用戶推送源代碼植酥。Pixel 和 Nexus 5X / 6P 的系統(tǒng)推送已經(jīng)進(jìn)入運(yùn)營商測試環(huán)節(jié)镀岛,預(yù)計能夠在接下來的幾周內(nèi)逐步完成,Pixel C 和 Nexus Player 的推送也會同步進(jìn)行友驮。參與 Android 測試的用戶今天會收到最終版本的升級推送哎媚,鏡像文件現(xiàn)已可供下載,支持手動刷入喊儡。幾個月以來我們一直在與合作伙伴共同努力:截至今年年底拨与,包括 Essential、華為艾猜、HTC买喧、京瓷、摩托羅拉匆赃、HMD 諾基亞淤毛、三星、夏普以及索尼在內(nèi)的一眾硬件廠商算柳,都計劃將他們旗下的設(shè)備升級至 Android 8.0 Oreo 低淡。
Android Oreo 有何特點(diǎn)?
Android 8.0 Oreo 的宗旨是提供流暢的體驗(yàn)瞬项,讓 Android 更加強(qiáng)大且易用:
畫中畫 (Picture-in-picture)功能讓用戶能夠以任意窗口大小同時進(jìn)行兩項(xiàng)任務(wù)的操作蔗蹋,該功能的 App 適配也很簡單。(如以下圖片所示)
通知標(biāo)志 (Notification dots)使得通知的概念得以延伸囱淋,為應(yīng)用的互動提供更多可能猪杭。對大多數(shù)應(yīng)用來說,這一功能會自動實(shí)現(xiàn)妥衣,Android 甚至?xí)鶕?jù)應(yīng)用圖標(biāo)的顏色自動選擇通知標(biāo)識的顏色皂吮。
自動填充框架 (Autofill framework)簡化了用戶設(shè)置一臺新設(shè)備以及同步密碼的過程戒傻。需要用到表格數(shù)據(jù)的應(yīng)用可為自動填充框架進(jìn)行優(yōu)化,密碼管理應(yīng)用通過新的 API 接口蜂筹,能夠讓用戶在自己最喜歡的應(yīng)用中使用密碼自動填充服務(wù)需纳。自動填充功能將會在接下來的幾周中,隨同 Google Play的服務(wù)進(jìn)行升級艺挪。
我們同樣也在 Android Vitals 上深耕不翩,這一項(xiàng)目通過給予開發(fā)者更具可視化的應(yīng)用數(shù)據(jù),來幫助優(yōu)化電池壽命闺属,縮短啟動時間,提高圖形渲染效率和穩(wěn)定性:
系統(tǒng)優(yōu)化:我們通過系統(tǒng)底層優(yōu)化使得應(yīng)用運(yùn)行更迅速且流暢周霉。試舉一例:應(yīng)用運(yùn)行時掂器,通過新的并發(fā)壓縮垃圾回收機(jī)制 (concurrent compacting garbage collection) ,代碼局域化 (code locality) 以及其他一些方式優(yōu)化其體驗(yàn)俱箱。
后臺限制:我們對在后臺拿取位置和 Wi-Fi 掃描增加了限制国瓮,并改變了應(yīng)用在后臺的運(yùn)行模式。這些限制能夠避免被動的電量和內(nèi)存流失狞谱,而且對所有應(yīng)用都適用 —— 要確保您了解這一點(diǎn)乃摹,并在應(yīng)用中進(jìn)行說明。
備有多種功能的 Android Vitals 信息中心以及集成開發(fā)環(huán)境分析器(IDE profilers):在 Play 控制臺中跟衅,現(xiàn)在看到您應(yīng)用的數(shù)據(jù)匯總孵睬,這些數(shù)據(jù)能夠幫助您發(fā)現(xiàn)一些常見問題。數(shù)據(jù)包括超常的應(yīng)用崩潰率伶跷,應(yīng)用程序無響應(yīng)率掰读,框架卡死時間,慢速渲染耗時叭莫,過度喚醒等等蹈集。您也能夠在 Android Studio 3.0 中找到新的性能分析器,以及新的儀表布局雇初。
如上圖所示拢肆,在 Android 8.0 中,可以直接為應(yīng)用內(nèi)的某個功能設(shè)置快捷方式并固定在桌面啟動器中
如上圖所示靖诗,通知表示能夠讓用戶保持應(yīng)用內(nèi)活動郭怪,并直接讓他們跳轉(zhuǎn)到應(yīng)用的核心功能當(dāng)中
Android Oreo 同時也為開發(fā)者準(zhǔn)備了許多新功能,助其提升效率刊橘,開發(fā)出更好的 App移盆。那么有些什么新功能呢?
自動調(diào)整 TextView 的文字大猩宋:
Android Oreo 8.0 允許開發(fā)者自定義 TextView 實(shí)現(xiàn)文本內(nèi)容自動調(diào)整字體大小以適應(yīng) TextView 大小咒循,各種文本長度均適用据途。開發(fā)者須預(yù)設(shè)一系列文本大小,或者設(shè)定出最大最小值(兩值之間須設(shè)固定數(shù)字間隔)叙甸,這樣文本都就能根據(jù) TextView 的大小自動展開或收縮颖医。
XML 中的字體資源:
Android O 中已充分支持 Fonts 字體資源類型,允許開發(fā)者直接在 XML 布局中訪問字體并定義字體系列裆蒸。
可下載字體和表情:
Android 8.0 允許開發(fā)者從共有供應(yīng)商獲取可下載字體資源熔萧,而無需將字體綁定到 APK 中。供應(yīng)商和 Android 支持庫負(fù)責(zé)下載字體僚祷,并將這些字體分享到各個 App 中佛致。同樣的操作也可用于獲取表情資源,讓您的開發(fā)不再止步于設(shè)備內(nèi)置表情包辙谜。
這項(xiàng)功能幫助開發(fā)者更好地使用設(shè)備用戶界面俺榆,創(chuàng)建自適應(yīng)圖標(biāo),根據(jù)設(shè)備廠商選定的不同模板装哆,系統(tǒng)顯示圖標(biāo)形狀會有所改變罐脊。系統(tǒng)還添加了與圖標(biāo)的交互動畫,置于啟動器蜕琴、快捷方式萍桌、設(shè)置、共享對話框和概覽屏幕當(dāng)中凌简。
? 自適應(yīng)圖標(biāo)可在不同設(shè)備型號上顯示為各種不同的形狀
快捷方式鎖定:
App 快捷方式和桌面小部件是吸引用戶的利器上炎。從 Android 8.0 Oreo 開始,用戶能夠在應(yīng)用內(nèi)添加和鎖定快捷方式至啟動器雏搂。與此同時反症,新系統(tǒng)還支持添加特定活動,幫助用戶創(chuàng)建快捷方式畔派,該活動需要通過自定義選項(xiàng)并經(jīng)過用戶同意才可完成铅碍。
支持更廣域應(yīng)用的顏色:
Android 圖像應(yīng)用可以充分利用新設(shè)備帶來的廣域色彩支持,顯示寬色域圖像线椰。應(yīng)用程序?qū)⑿枰谄淝鍐挝募總€活動)啟用一個標(biāo)志胞谈,加載啟用寬位圖嵌入顏色配置文件(如 AdobeRGB,Pro Photo RGB憨愉,DCI-P3 等)烦绳。
WebView 網(wǎng)頁視圖:
Android 8.0 Oreo 默認(rèn)開啟 WebView 多進(jìn)程模式,新增 API 控制應(yīng)用處理錯誤和崩潰配紫,增強(qiáng)安全性和提升應(yīng)用穩(wěn)定性径密。為了進(jìn)一步提高安全措施,開發(fā)者可以選擇通過 Google Safe Browsing 來對自己應(yīng)用內(nèi) WebView 的 URL 來進(jìn)行安全檢查躺孝。
Java 8 語言 APIs 和 runtime 的優(yōu)化:
Android 現(xiàn)在支持幾種新的 Java 語言 API享扔,包括新的 java.time API底桂。另外 Android Runtime 相比以前更快,在某些基準(zhǔn)測試程序中可以提升多達(dá) 2 倍惧眠。
想要進(jìn)一步了解以上功能籽懦,或者獲知其他新功能訊息,請前往developer.android.google.cn氛魁,并參閱鏈接中的 Android 8.0 Oreo 官方網(wǎng)站暮顺。
確保您的 App 已經(jīng)準(zhǔn)備就緒
如果您還沒有準(zhǔn)備好,還請花些時間對您的 App 進(jìn)行測試秀存,確保用戶升級 Android 8.0 Oreo 后捶码,能繼續(xù)流暢使用您的 App。
請通過 Google Play 將您現(xiàn)在 App 下載到任何一臺運(yùn)行 Android 8.0 Oreo 系統(tǒng)的設(shè)備或者模擬器中或链。App 應(yīng)該運(yùn)行順利惫恼,圖像顯示良好,完美應(yīng)對系統(tǒng)升級后的各項(xiàng)行為變化株扛。
您需要特別注意以下幾點(diǎn):
后臺位置限制
通知分類通道
網(wǎng)絡(luò)變換
安全變化
標(biāo)識碼更改尤筐。
一旦對 App 做出更改汇荐,解決問題之后洞就,請通過 alpha、beta 或者正式版本渠道掀淘,在 Google Play 上發(fā)布相應(yīng)更新旬蟋,保證更新到 Android 8.0 Oreo 的用戶能夠繼續(xù)使您的 App。
借助 Android Studio革娄,加快開發(fā)進(jìn)程
當(dāng)您準(zhǔn)備用 Android 8.0 Oreo 提供的新 API 進(jìn)行開發(fā)時倾贰,我們建議升級到最新版本的 Android Studio 3.0 (現(xiàn)已發(fā)布 beta 測試版)。該版本具備更強(qiáng)大的 App 性能評測工具拦惋,支持 Kotlin 編程語言匆浙、Gradle 構(gòu)建優(yōu)化、Instant App 功能厕妖,XML 字體資源首尼、可下載字體以及自適應(yīng)圖標(biāo)。
如上圖所示言秸,通過 Android Studio 3.0 內(nèi)置的小工具软能,開發(fā)者可以邊開發(fā)邊享受 Android 8.0 Oreo 功能,比如說在自己開發(fā)的 App 中預(yù)覽 XML 中的字體資源举畸。
此外查排,我們也推薦開發(fā)者升級到 Android 支持庫 26.0.2(可前往 Google's Maven repository 下載)。同時可前往 SDK Manager 跟新 SDK 管理工具和模擬器所需圖像抄沮。
如果您才剛剛開始在 Android 8.0 Oreo 上進(jìn)行開發(fā)跋核,請先閱讀《Android O 遷移指南》岖瑰,了解所須相關(guān)步驟和配置變化。
向 Google Play 提交您的新版應(yīng)用
Google Play 現(xiàn)在向以 API 等級 26 為目標(biāo)編譯的應(yīng)用開放了罪。準(zhǔn)備妥當(dāng)后锭环,您可以通過 alpha、beta 或者正式版本渠道提交升級泊藕。
請確保升級后的應(yīng)用能夠在 Android Oreo 以及其他版本的 Android 上均能良好運(yùn)行辅辩。推薦使用 Google Play beta 測試,先獲取少量用戶的反饋娃圆,然后再行正式推送玫锋。我們非常期待各位的應(yīng)用升級!
Android Oreo 的下一步讼呢?
我們即將關(guān)閉開發(fā)者預(yù)覽版的問題追蹤器(issue tracker)撩鹿,但請諸位繼續(xù)保持反饋!現(xiàn)在您可以通過 AOSP 問題追蹤器(issue tracker)來反饋 Android 8.0 中的問題悦屏。
再次感謝眾多參與 Android O 開發(fā)者預(yù)覽版和公測版本中的開發(fā)者和早期用戶节沦。你們提供了寶貴的反饋,反映出來的問題將會幫助我們將 Android Oreo 打造成一個優(yōu)質(zhì)的平臺础爬。