Android Oreo 常見問題 3.0 | Android 開發者 FAQ Vol.11

Android_開發者發表於2019-02-27

Android Oreo 常見問題 3.0 | Android 開發者 FAQ Vol.11

自 Android Oreo 釋出以來,我們陸續收到了開發者們提出的一些新系統相關問題。尤其在 1 月期間我們專門製作並上傳了 Oreo 新功能應用的中文教學視訊,幫助大家更快掌握系統新特性。在眾多問題中我們篩選出以下十個比較有代表性的問題並作出相應解答,希望可以幫助大家查漏補缺或鞏固已有知識技能。

Q 1:手機耗電比較嚴重,Android對這方面有改進嗎?

A:Android在後臺中執行的服務會消耗裝置資源,這可能降低使用者體驗。為了緩解這一問題,Android O 系統對這些服務施加了一些限制。具體操作請參考 “【中文教學視訊】Android Oreo 中的後臺程式

Q 2:我比較重視 Android 的安全性問題,那麼在這方面 Android O 有什麼新的改進呢?

A:在 Android 8.0 之前,如果應用在執行時請求許可權並且被授予該許可權,系統會將屬於同一許可權組並且在清單中註冊的其他許可權也一起授予應用。

對於針對 Android 8.0 的應用,此行為已被糾正。系統只會授予應用明確請求的許可權。請注意,一旦使用者為應用授予某個許可權,則所有後續對該許可權組中許可權的請求都將被自動批准。

Q 3:Android O 的自適應圖示可以適應不同的手機嗎?

A:是的。自適應圖示可以在不同的裝置模型中顯示各種形狀。例如,自適應啟動器圖示可以在一個OEM裝置上顯示圓形形狀,並在另一個裝置上顯示一個圓角矩形,而開發者不需要進行額外的任何工作。

Q 4:我是 Android 初學者,不瞭解 Android O 之前的相關介面,我如何能在短時間內明白 Android O 做了哪些改進呢?

A:關於 Android 的歷史版本,可以參考 Android 開發者官方網站獲知具體資訊(連結:developer.android.com/index.html)。

Android 8.0 除了提供諸多新特性和功能外,還對系統和 API 行為做出了各種變更。重點介紹了您應該瞭解並在開發應用時加以考慮的一些主要變更(參考連結: developer.android.cn)。

https://Q 5:我是做移動支付的,自動填充框架對於我來說是一個很好的功能,有沒有能運用到上面(移動支付方面)的?

A:自定義描述可幫助自動填充服務更清楚地說明正在儲存的內容;例如,當螢幕包含信用卡時,它可以顯示信用卡銀行的標誌,信用卡號碼的最後四位數字和到期號碼。要了解更多資訊,請參閱 CustomDescription 課程(連結:developer.android.cn/reference/a…)。

Q 6:我的 Android 虛擬機器有非常多,預設路徑是什麼?

A:

  • Mac OS X 和 Linux:/ ~/.android/avd/name.avd

  • 微軟 Windows XP:C:\Documents and Settings\user\.android\name.avd\

  • Windows Vista 和更高版本:C:\Users\user\.android\name.avd\

您可以通過兩種方式發現檔案的位置:

  • 從命令列啟動模擬器時,使用 -verbose 或 -debug init 選項,並檢視輸出;

  • 使用該命令列出預設目錄。例如:emulator -help-option

Q 7:我想將我的虛擬機器存在另一個路徑中,我該如何操作?

A:在命令列使用 -datadir dir 使用絕對路徑指定資料目錄。

例如:$ emulator @Nexus_5X_API_23 -datadir ~/.android/avd/Nexus_5X_API_23.avd/mytest

Q 8:有關模擬機的相關命令列我在哪裡可以看到?

A:Android SDK 包含一個 Android 裝置模擬機,是在您計算機上執行的虛擬裝置。 Android 模擬機可讓您在不使用物理裝置的情況下開發和測試 Android 應用程式。

有關 Android 虛擬機器命令列,請參考原文(連結:developer.android.cn)。

Q 9:Android Support Library V26 什麼時候可以用 SDKTool 下載到?

A:Android Support Library 不需要下載,在 gradle 的配置檔案依賴即可。

Q 10:Android O 在藍芽開發方面有沒有什麼變化?

A:您好,是有變化的。Android 8.0 對 ScanRecord.getBytes() 函式檢索的資料長度做出以下變更:getBytes() 函式對於所接收的位元組數不作任何假定。因此,應用不應受所返回的任何最小或最大位元組數的影響。相反,應用應當計算所返回陣列的長度;相容藍芽 5 的裝置返回的資料長度可能會超出之前最大約 60 個位元組的限制;如果遠端裝置未提供掃描響應,則也可能返回少於 60 個位元組的資料。

Android Oreo 常見問題 3.0 | Android 開發者 FAQ Vol.11

如果您仍然有關於系統及相容性等問題,歡迎在我們的微信公眾平臺留言,我們會繼續收集有代表性的問題,請我們的工程師做出解答,並將答案儘量及時地回覆給大家。同時,也請關注下一期的 “Android 開發者 FAQ” 專題文章,希望可以幫助您補充相關知識技能。


相關文章