近期,我們推出了Developer Preview開發(fā)者預(yù)覽版 4 做為 Android O 正式版本之前的最后一個(gè)預(yù)覽版本,來確保您的應(yīng)用準(zhǔn)備就緒。
這是我們?cè)诮衲晗奶煜蜷_發(fā)者推出官方 Android O 平臺(tái)的最后預(yù)覽版。借此機(jī)會(huì),您可以盡快地測(cè)試并發(fā)布您的更新,讓您的用戶平穩(wěn)地過渡到 Android O。
向 Android O 遷移您的應(yīng)用,首先請(qǐng)確保平臺(tái)兼容性
準(zhǔn)備一臺(tái) Android O 的設(shè)備,如果您有一臺(tái)兼容設(shè)備(Pixel、Pixel XL、Pixel C、Nexus 5X、Nexus 6P、 Nexus Player 或 Android Emulator),請(qǐng)從鏈接中的頁面下載。
獲得適合您的設(shè)備的 Android O 系統(tǒng)映像,然后按照鏈接中的說明將映像刷入設(shè)備
或下載適用于 Android Emulator 的 Android O 系統(tǒng)映像。它列于SDK管理器的 Android O Preview 下,顯示為 Google APIs Intel x86 Atom System Image。
*注意:Android O 系統(tǒng)映像只能通過 Android Studio 3.0 Canary下載
如果您的設(shè)備已注冊(cè) Android 測(cè)試版,則會(huì)在近期收到 Developer Preview 4 的更新。如果您尚未注冊(cè)您的設(shè)備,只需訪問 Android 測(cè)試版網(wǎng)站即可注冊(cè)并獲得更新。
Developer Preview 4 開發(fā)者預(yù)覽版更新
開發(fā)者預(yù)覽 4 是 Android O 的候選版本,您可以使用它來完成開發(fā)和測(cè)試即將推出的正式版本。它包括最終的系統(tǒng)行為、最新的錯(cuò)誤修復(fù)、優(yōu)化、以及開發(fā)者預(yù)覽版 3 已經(jīng)可用的最新 API(API level 26)。
不久之前,我們發(fā)布了 Developer Preview 4 設(shè)備系統(tǒng)鏡像,以及穩(wěn)定版本的 Android 26.0.0 支持庫。我們也將在近期進(jìn)行 SDK,工具和 Android 模擬器系統(tǒng)鏡像的增量更新。
我們還推出了一個(gè)新版本的 Android 測(cè)試支持庫 ,其中包含了新的功能,如 Android Test Orchestrator,Multiprocess Espresso 等。請(qǐng)注意即將推出的細(xì)節(jié)。
Android O 上為您的應(yīng)用測(cè)試
目前,Developer Preview 4系統(tǒng)圖像為臨近的 Android O 版本提供了一個(gè)極好的方式來測(cè)試當(dāng)前應(yīng)用程序?,F(xiàn)在,通過測(cè)試,您可以確保您的應(yīng)用程序提供用戶升級(jí)到官方 Android O 平臺(tái)之后所需的體驗(yàn),只需在 Android Beta 版計(jì)劃中注冊(cè)受支持的設(shè)備,即可直接無線更新,也可以從 Google Play 安裝您的應(yīng)用,和測(cè)試用戶交互流程。應(yīng)用程序應(yīng)該確保在功能和外觀上正常特別是能正確地處理 Android O 的行為變化
如:背景位置限制 (background location limits) 、通知通道 (notification channels)、網(wǎng)絡(luò) (networking) 和安全性 (security) 以及標(biāo)識(shí)符 (identifiers) 的變化。
一旦解決了部分問題,請(qǐng)發(fā)布您的應(yīng)用更新到當(dāng)前的目標(biāo)級(jí)別,以便在用戶開始接收 Android O 時(shí)可以使用它們。
執(zhí)行兼容性測(cè)試
與 Android O 的兼容性測(cè)試多半與您準(zhǔn)備發(fā)布應(yīng)用時(shí)執(zhí)行的測(cè)試屬于同一類型。這時(shí)有必要回顧一下以下鏈接中的核心應(yīng)用質(zhì)量準(zhǔn)側(cè)與測(cè)試最佳做法。
不過,測(cè)試還有另一個(gè)層面:Android O 向 Android 平臺(tái)引入了一些變化,即便不對(duì) tragetSdkVersion 做任何變動(dòng),仍可能影響應(yīng)用的行為或令其根本無法運(yùn)行。因此,您必須回顧以下的關(guān)鍵變化,并對(duì)任何為適應(yīng)這些變化而實(shí)現(xiàn)的修復(fù)進(jìn)行測(cè)試。
后臺(tái)位置更新頻率下降。參見鏈接中的后臺(tái)位置限制:
不再支持 net.hostname
send(DatagramPacket) 引發(fā)新的異常。參見以下鏈接中的——行為變更:網(wǎng)絡(luò)連接和 HTTP(S) 連接
AbstractCollection 方法引發(fā)異常 NullPointerException ?參見以下鏈接中的——行為變更:集合的處理
Currency.getDisplayName(null) 引發(fā)正常的 NullPointerException參見以下鏈接中的——行為變更:語言區(qū)域和國際化
從清單文件中移除廣播接收器
由于 Android O 引入了新的廣播接收器限制,詳情請(qǐng)見鏈接。
因此您應(yīng)該移除所有為隱式廣播 Intent 注冊(cè)的廣播接收器。將它們留在原位并不會(huì)在構(gòu)建時(shí)或運(yùn)行時(shí)令應(yīng)用失效,但當(dāng)應(yīng)用運(yùn)行在 Android O 上時(shí)它們不起任何作用。
顯式廣播 Intent(只有您的應(yīng)用可以響應(yīng)的 Intent)在 Android O 上仍以相同方式工作。
這個(gè)新增限制有一些例外情況。如需查看在以 Android O 為目標(biāo)平臺(tái)的應(yīng)用中仍然有效的隱式廣播的列表,請(qǐng)參閱以下鏈接的隱式廣播例外清單。
(https://developer.android.com/preview/features/background-broadcasts.html)
使用 Android O 功能和 API 增強(qiáng)您的應(yīng)用程序
運(yùn)行最新版本 Android 的用戶通常在下載應(yīng)用程序,消費(fèi)內(nèi)容和進(jìn)行購買方面最為活躍。他們更喜歡支持他們最喜愛的應(yīng)用中的新 Android 功能。對(duì)于 Android O,用戶比較期待的以下特征:
通知渠道 (notification channels)
(https://developer.android.com/preview/features/notification-channels.html)
應(yīng)用通知標(biāo)識(shí) (notification dots)
(https://developer.android.com/preview/features/notification-badges.html)
快速固定 (shortcut pinning)
(https://developer.android.com/preview/features/pinning-shortcuts-widgets.html)
畫中畫 (picture-in-picture)
(https://developer.android.com/preview/api-overview.html#opip)
自動(dòng)填充 (autofill)
(https://developer.android.com/preview/features/autofill.html#optimizing_your_app_for_autofill)
并且隨著時(shí)間的推移更多用戶升級(jí)到 Android O 之后,這些功能還可以增加您應(yīng)用的用戶活躍度。
△使用 Android O,您的應(yīng)用程序可以直接在啟動(dòng)器中固定特定的應(yīng)用程序快捷方式,以促進(jìn)互動(dòng)。
△?通知點(diǎn)讓用戶在您的應(yīng)用程序中保持活躍,并讓他們能直接跳轉(zhuǎn)應(yīng)用程序的核心功能。
使用 Android O 功能增強(qiáng)應(yīng)用程序可以幫助您強(qiáng)化與用戶的接觸、提供新的互動(dòng),給他們更多的控制和安全并提高應(yīng)用性能。一些特征如自適應(yīng)圖標(biāo) (adaptive icons), 可下載的字體 (downloadable fonts),和自動(dòng)調(diào)整 TextView (autosizing TextView) 可以簡(jiǎn)化您的開發(fā)并盡量減少您的 APK 大小。其次耗電也是用戶最關(guān)心的問題,用戶會(huì)感謝您針對(duì)應(yīng)用程序后臺(tái)執(zhí)行限制以及 Android O 應(yīng)用程序的其他重要系統(tǒng)行為進(jìn)行的優(yōu)化。
使用 Android Studio 加快開發(fā)速度
當(dāng)您準(zhǔn)備為 Android O 構(gòu)建時(shí),我們建議您更新到最新版本的 Android Studio 3.0,可從 canary 渠道下載。除了改進(jìn)的應(yīng)用程序性能分析工具、支持 Kotlin 編程語言和 Gradle 構(gòu)建優(yōu)化之外,Android Studio 3.0 還使用的有:
免安裝應(yīng)用程序 (Android Instant App)
(https://android-developers.googleblog.com/2017/05/android-instant-apps-is-open-to-all.html)
XML 字體
(https://developer.android.com/preview/features/working-with-fonts.html)
可下載字體
(https://developer.android.com/preview/features/downloadable-fonts.html)
自適應(yīng)圖標(biāo)
(https://developer.android.com/preview/features/adaptive-icons.html)
我們還建議您更新到穩(wěn)定版本的 Android 支持庫 26.0.0,現(xiàn)在可從 Google 的 Maven 存儲(chǔ)庫中獲取最新的 SDK、工具和虛擬機(jī)系統(tǒng)映像。
將它們添加到您的項(xiàng)目,添加 maven.google.com 到您的模塊級(jí)的 Maven 倉庫 build.gradle 文件:
\\\
repositories {
maven {
url'https://maven.google.com'
// Alternative URL is 'https://dl.google.com/dl/android/maven2/'
}
}
\\\
然后將所需的庫添加到您的 dependencies 中:
\\\
dependencies {
compile'com.android.support:appcompat-v7:26.0.0'
}
\\\
您可以將項(xiàng)目的 compileSdkVersion 更新為 API 26,以針對(duì)官方的 Android O API 進(jìn)行編譯。我們還建議您將應(yīng)用的 targetSdkVersion 更新為 API 26 來測(cè)試應(yīng)用程序,以便適用 Android O 的特定變化。
發(fā)布您的更新至 Google Play 應(yīng)用商店
Google Play 已向針對(duì) API 26 編譯的應(yīng)用開放。當(dāng)您準(zhǔn)備好后就可以在 Alpha,Beta 或生產(chǎn)渠道中發(fā)布 APK 更新。
為了確保您的更新的應(yīng)用程序在 Android O 以及舊版本上良好運(yùn)行。我們建議您使用 Google Play 的 Beta 版測(cè)試功能,以獲得少量用戶的早期反饋,然后分階段發(fā)布。我們很期待看到您的應(yīng)用更新!
如何獲取開發(fā)者預(yù)覽4
獲取?Developer Preview?開發(fā)者預(yù)覽 4 很簡(jiǎn)單,如果您還沒有使用,只需訪問 android.com/beta 并選擇您的手機(jī)或平板電腦。像往常一樣,您也可以通過以下鏈接進(jìn)行手動(dòng)下載:
(https://developer.android.com/preview/download.html?utm_campaign=android_launch_npreview_061516&utm_source=anddev&utm_medium=blog#flash)
并刷入此更新到設(shè)備。
以上就是本次 Developer Preview 4 更新的全部?jī)?nèi)容。如果您有其他與 Android 兼容性相關(guān)的問題或者建議,歡迎您通過留言的方式向我們提出,讓我們可以更好的為廣大 Android 開發(fā)者們提供支持。