近日已慢,谷歌向全球正式發(fā)布 Android 9 Pie抑片,新版Android利用人工智能技術(shù)睹栖,讓您的手機更加智能硫惕、簡潔與人性化。
下面簡要介紹下新特性:
以機器學習為核心野来,打造更為智能的手機
Android 9 賦予手機強大的學習能力:系統(tǒng)能夠根據(jù)用戶在使用過程中展露的習慣與偏好,進行自我學習與適應(yīng) —— 從強勁續(xù)航到人性化應(yīng)用推薦踪旷,Android 9 都能想您所想曼氛,保障持久流暢的用戶體驗。
全新的?Android 儀表板
Google 也將在 Android P 中放入統(tǒng)計功能(Dashboard)令野,就像儀表板依樣讓使用者可以從這里知道 app 的使用情況舀患,例如多常使用某款 app、使用多久時間气破、通常何時使用等等聊浅,也可以在此限制自己的使用時間(App Timer),例如你一天限制自己使用 30 分鐘的 Facebook,當你用了 30 分鐘后低匙,F(xiàn)acebook 就會變灰旷痕,提醒你使用時間已到。
動態(tài)電量管理
與 DeepMind 合作推出了動態(tài)電量管理特性顽冶,利用機器學習技術(shù)對系統(tǒng)資源進行有限分配欺抗,更專注于用戶最常用的應(yīng)用。如果您已經(jīng)針對低耗電模式强重、應(yīng)用待機模式以及后臺限制對您的應(yīng)用進行過相關(guān)優(yōu)化绞呈,那么它就應(yīng)該已經(jīng)能夠和動態(tài)電量管理特性完美配合。如果您暫時還未開始優(yōu)化工作间景,請閱讀電量管理官方文檔佃声,獲取具體操作指南。
Slices
Slices 能夠有效幫助用戶節(jié)省操作時間倘要,不需要通過全屏體驗就能夠使用應(yīng)用的部分功能秉溉。借助配套的 UI 模板,Slices 能夠?qū)?yīng)用內(nèi)容以高動態(tài)碗誉、富交互的形式插入到多個使用場景中召嘶,比如 Google Search 和 Assistant。請進一步了解如何在應(yīng)用中構(gòu)建 Slices哮缺。
App Actions
App Actions 是一種全新的應(yīng)用推薦方式弄跌。開發(fā)者可以利用這個功能,讓更多人看到自己的應(yīng)用并極大提高用戶參與度尝苇。借助機器學習技術(shù)铛只,App Actions 能對應(yīng)用的語義意圖和使用場景進行分析,并根據(jù)分析結(jié)果在適當?shù)臅r機向用戶推薦您的應(yīng)用糠溜。
文本識別與 Smart Linkify
在 Android 9 中淳玩,對識別文本的機器學習模型進行了擴展,使其可以借助 TextClassifier API 識別出類似日期或航班號這樣的信息非竿。此外蜕着, Smart Linkify 允許開發(fā)者通過 Linkify API 使用文本識別模塊完成多項操作,比如對用戶可采取的操作提出建議红柱。Smart Linkify 讓系統(tǒng)在文本識別精確度與速度上都有明顯的提升承匣。
神經(jīng)網(wǎng)絡(luò) API 1.1
Android 9.0 對神經(jīng)網(wǎng)絡(luò) API 進行了擴展與改進,進一步優(yōu)化 Android 對機器學習硬件加速的支持锤悄。神經(jīng)網(wǎng)絡(luò) API 1.1 共增加了對 9 個新算子的支持韧骗,它們分別是 Pad、BatchToSpaceND零聚、SpaceToBatchND袍暴、Transpose些侍、Strided Slice、Mean政模、Div岗宣、Sub 和 Squeeze。TensorFlow Lite 就是一個已經(jīng)用上此 API 的典型機器學習框架览徒。
凹口屏支持
Android 9 中加入了凹口屏支持狈定,讓您的應(yīng)用可以充分利用最新全面屏,展現(xiàn)應(yīng)用的獨特魅力习蓬。該功能可以在大部分應(yīng)用中無縫工作纽什,系統(tǒng)會通過調(diào)整狀態(tài)欄高度將應(yīng)用內(nèi)容與屏幕缺口區(qū)域分開。如果您的應(yīng)用含有沉浸式內(nèi)容躲叼,您可調(diào)用 display cutout APIs 確認缺口形狀與位置芦缰,然后請求圍繞缺口進行全屏布局。
默認使用 HTTPS
為了將所有網(wǎng)絡(luò)流量從明文 (未加密的HTTP) 逐步遷移至 TLS枫慷,更改了網(wǎng)絡(luò)安全配置的默認設(shè)置让蕾,以阻止所有明文流量,強制應(yīng)用通過 TLS 建立網(wǎng)降連接或听,除非開發(fā)者明確允許特定域名使用明文傳輸探孝。
接著說下適配問題:
non-SDK接口的使用
一般來說,SDK 接口是指在 Android 框架軟件包索引中記錄的接口誉裆。 對非 SDK 接口的處理是 API 抽象化的實現(xiàn)細節(jié)顿颅;其會隨時更改,恕不另行通足丢。
https://developer.android.google.cn/reference/packages
Android P 引入了針對非 SDK 接口的新使用限制粱腻,無論是直接使用還是通過反射或 JNI 間接使用。 無論應(yīng)用是引用非 SDK 接口還是嘗試使用反射或 JNI 獲取其句柄斩跌,均適用這些限制绍些。
名單分類
Light grey list: targetSDK>=P時,警告耀鸦;
Dark grey list: targetSDK=p時柬批,不允許調(diào)用;
Black list:三方應(yīng)用不允許調(diào)用揭糕;
名單查看:
https://android.googlesource.com/platform/frameworks/base/+/master/config/
挖孔屏適配
谷歌P版本提供了統(tǒng)一的挖孔屏方案和三方適配挖孔屏方案:
對于有狀態(tài)欄的頁面萝快,不會受到挖孔屏特性的影響;
全屏顯示的頁面著角,系統(tǒng)挖孔屏方案會對應(yīng)用界面做下移避開挖孔區(qū)顯示;
已經(jīng)適配的P的應(yīng)用的全屏頁面可以通過谷歌提供的適配方案使用挖孔區(qū)旋恼,真正做到全屏顯示
總的來說吏口,就是P版本已經(jīng)坐了兼容奄容,全屏顯示和狀態(tài)欄顯示,都會避開挖空區(qū)域顯示产徊。
但注意對于沉浸式的顯示要注意昂勒,避免挖空擋住UI布局,需要做好適配舟铜。
P版本三方適配挖孔屏方案
1戈盈、 新增挖孔屏挖孔尺寸和位置接口
2、新窗口布局模式谆刨,允許應(yīng)用程序請求是否在挖孔區(qū)域布局:
layoutInDisplayCutoutMode值說明:
a)LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT:默認情況下塘娶,全屏窗口不會使用到挖孔區(qū)域,非全屏窗口可正常使用挖孔區(qū)域痊夭。
b)LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS:窗口聲明使用挖孔區(qū)域
c)LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER:窗口聲明不使用挖孔區(qū)域