Android Q 適配指南 讓你少走一堆彎路

2021-09-18 05:42:29 字數 1286 閱讀 1283

文中鏈結請自行科學上網

android q beta 1剛出,講道理國內是不到下半年不用理睬q的,但是上月末的一封華為要求適配q的郵件要求我們在5月底之前完成相關適配,不然應用會被下架。

一開始還心生奇怪,為什麼這次華為的郵件來的那麼早以及嚴格。當我仔細閱讀了官方文件之後發現q的更新特別多,且不適配應用可能無法正常執行(不管targetsdk是否為q)。

至於q的新功能及sdk,我粗略掃了一眼,專案中並沒有涉及,故暫不介紹,只放出鏈結androidq新api及功能。

在 android q 中,當使用者首次執行以 android 6.0(api 級別 23)以下的版本為目標平台的任何應用時,android平台會向使用者發出警告。如果此應用要求使用者授予許可權,則系統會先向使用者提供調整應用許可權的機會,然後才會允許此應用首次執行。

谷歌要求執行在q裝置上的應用targetsdk>=23,不然會向使用者發出警告。

非sdk介面限制在android p中就已提出,但是在q中,被限制的介面的分類有較大變化

如果您的應用依賴於非 sdk 介面,則應該開始計畫遷移到 sdk 替代方案。如果您無法為應用中的某項功能找到使用非 sdk 介面的替代方案,則應該請求新的公共 api。

官方要求targetsdk>=p的應用不使用這些方法,並尋找其他的公共api去替代這些非sdk介面,如果找不到,則可以向谷歌申請,請求乙個新的公共api(一般不需要)。

就我個人掃瞄並定位的結果來看,專案中使用非sdk介面大概率有以下兩種情況:

第一種是好解決的,畢竟是我們自己寫的**。

第二種就頭疼了,只能更新到最新的三方sdk版本,或者提工單、換庫(也是整個適配過程中工作量最龐大的部分)。

由於目前q是preview版,所以targetsdk==q 的應用只能在q裝置上跑。

這個錯誤是由於打包壓縮so庫時造成的,具體原因可見 issuetracker.google.com/issues/3704…

packagingoptions

這兩個版本的適配問題本文就不做詳述,網上有很多詳細的介紹。

Android Q應用適配指南

1.android q相容性變化 1.1非sdk介面限制 android 平台開始限制您的應用在 android 9 api 級別 28 中使用非 sdk 介面,灰名單和白名單的非 sdk 介面已有更新。適配建議 依賴非sdk介面的應用應盡快遷移到 sdk 替代方案,如部分非sdk介面無替代方案,則...

google支票托收 讓你少走點彎路

今天york 不老歌站長 又去匯豐銀行當了一回小白鼠 所以寫出來,讓大家下次收到少走彎路 google支票托收不是很麻煩 昨天去中國銀行,排隊的人太多,保安告訴我沒有中國銀行的賬戶還得新開乙個,我說工商銀行的賬號可以嗎,他說你有工商銀行的賬號就直接去工行兌就行了 我說工行能兌嗎,他說能於是我就跑到工...

讓你少奮鬥10年的工作經驗

第九 不要推卸責任 推卸責任是害怕的條件反射。不要認為別人看不出這點。我記得我小學裡的一件事情。我一次作業沒有帶來,老師要訓斥我,說 你怎麼老是作業不帶?我當時說 不是。當我正要支支吾吾時候,老師說 什麼不是?你帶來了沒有?我說 沒有 老師說 那不就是沒有帶!什麼不是!就是!之後我就發現,我只是害怕...