Android O官方版本即將到來, 先來看看DP4開發(fā)者預(yù)覽版

近期,我們推出了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ā)者們提供支持。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,036評(píng)論 25 709
  • afinalAfinal是一個(gè)android的ioc,orm框架 https://github.com/yangf...
    passiontim閱讀 15,873評(píng)論 2 45
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評(píng)論 19 139
  • 大腦對(duì)美的追求總是無止境的。 前幾天推送了《手機(jī)控控手機(jī),讓你爆爽的7項(xiàng)手機(jī)整理術(shù)》,居然收到了作業(yè),想點(diǎn)評(píng)下又推...
    袁春楠閱讀 1,544評(píng)論 7 10
  • 在這一段時(shí)間內(nèi),圣羅蘭YSL星辰限量版瞬間把我的朋友圈刷爆了。 當(dāng)然也有人問YSL星辰是什么? YSL中文名為圣羅...
    目一一閱讀 465評(píng)論 0 0

友情鏈接更多精彩內(nèi)容