距離 Android 8.0 的發佈已經有五個月的時間,無論你的安卓設備有沒有更新 8.0 新系統,不少卓迷們和開發者都在猜想 Android 9.0 將會爲咱們帶來哪些新特性。這不,國外移動開發者社區 XDA 的活躍者們在 AOSP(Android 開放源代碼項目)的代碼提交記錄中有了新發現。java
他們從 AOSP 最新的 commits 中發現,那些使用 Android SDK 裏面沒有被文檔說起的非公開 APIs(也就是使用 @hide 註解標記的 APIs)的 apps 將受到系統限制。android
衆所周知,Android 系統是開源開放的,全部人均可以參與開發當中,並貢獻本身的一份力量。雖然源碼由 Google 統一管理和發佈,但總有一些被提交的代碼未經 Google 認證過,或者是說還沒有完成的,暫用 @hide 標記。目的只有一個,Google 不但願這些代碼被開發者使用。程序員
舉個例子,拿 android.net.wifi 包裏面的 WifiManager 類來講,該 Class 裏面就包含不少 @hide 標記的代碼,一些變量或方法:面試
/** * Broadcast intent action indicating whether Wi-Fi scanning is allowed currently * @hide */
public static final String WIFI_SCAN_AVAILABLE = "wifi_scan_available";
複製代碼
那你可能就要問了,既然 Google 不推薦使用,爲何有些開發者仍是要用呢?編程
**由於能實現一些特殊功能或者做爲一些編程技巧來用啊。**像市場上一些小衆 app 開發的輔助功能,不少都是利用這些隱藏 APIs 來作的。包括某些大廠的 app,其中的部分看上去高大上或者鮮爲人知的功能也是如此。可是,他們必定告訴外人是怎麼實現的。由於這頗有可能就是比競品厲害的地方之一,怎麼能泄漏呢?安全
不過也不都是安全的,開發者可能利用這些非公開 APIs 作一些病毒軟件或者其餘傷害用戶的功能。估計 Google 也是考慮到這點,纔對隱藏 APIs 強制禁用。畢竟,在提高 Android 系統安全和性能方面,Google 一直在努力。微信
另一個消息是,XDA 社區的好事者還在最近的 AOSP 提交記錄中發現了下一代安卓系統版本代碼:Pi,也就是 Android P 版本的名字。app
根據 Android 舊版本的命名習慣,Google 尤爲鍾愛使用美食或甜點來命名。因而,網友們都在猜想,Pi 會不會是 Pie 的縮寫,也就是餡餅的意思呢?ide
近期推薦性能
詳細理解 Activity 的四種啓動模式 一行命令,教你輕鬆搞定安卓開源項目的安裝問題!
關於我:亦楓,博客地址:yifeng.studio/,新浪微博:IT亦楓
微信掃描二維碼,歡迎關注個人我的公衆號:安卓筆記俠
不只分享個人原創技術文章,還有程序員的職場遐想
彩蛋:公衆號回覆關鍵字「面試資料」,獲取 BAT 面試大牛爲你準備的全套面試資料!