如果你擁有一臺 Google Pixel 設(shè)備,升級到最近推送的 Android 13 正式版之后,你可能會覺得似乎沒什么變化。
但我并不完全贊同「Android 13 就是 Android 12 加強(qiáng)版」這種說法——一年一次、甚至一年兩次版本更新的節(jié)奏之下,抱著「每年都有新鮮感」這樣的期待來看 Android 系統(tǒng)更新是有些理想化的。加上 Google 這兩年在 Android 新特性開發(fā)上重心越發(fā)向自家 Pixel 機(jī)型的體驗傾斜,將一年一次的大版本更新看成是一年一次的修補(bǔ)與完善其實更加合理一點。
另外,因為有 CDD、CTS 認(rèn)證以及 Google Play 商店政策的存在,定制系統(tǒng)的碎片化問題近幾年已有所改善。最終推送到大家手中的 Android 13 在外觀上可能各有差異,基礎(chǔ)功能方面的體驗卻不會相差太遠(yuǎn)。
P.S. 不知道 CDD、CTS 等概念的朋友可以去讀少數(shù)派之前的文章:
必須兼容 PD 快充,Google 為 Android 設(shè)下了這些新標(biāo)準(zhǔn)
下載應(yīng)用這件事,Play 商店為什么比國內(nèi)軟件商店更好?
所以在今天這篇文章中,我們還是以正式版的體驗為參考,梳理 Android 13 值得關(guān)注的亮點更新和重要變化。希望不久后手機(jī)廠商基于 Android 13 的定制系統(tǒng)正式推送到你手中的設(shè)備時,你能有個對比和參考。
▍發(fā)圖這件事,與 iOS 相似又有些不同
不知道你有沒有留意過,當(dāng)一款 Android 應(yīng)用想要讀取設(shè)備上的圖片和視頻文件時,可以采用的其實有兩種做法:
一種是像大部分國產(chǎn)應(yīng)用那樣首先授予完整的文件訪問權(quán)限,然后通過應(yīng)用內(nèi)置的、設(shè)計和功能都參差不齊的選取器進(jìn)行選擇。

大部分國產(chǎn)應(yīng)用的圖片和視頻選擇器都長這樣
這種方法很粗放。應(yīng)用獲取到文件訪問權(quán)限后,不僅可以直接在內(nèi)置的圖片和視頻選擇器中列出設(shè)備中的媒體文件,也可以借此訪問設(shè)備中的其他目錄,早前困擾 Android 平臺的存儲空間問題也來源于此。盡管 Android 11 引入了很多人心心念念的分區(qū)存儲機(jī)制來改善私有目錄濫用的亂象,但部分國產(chǎn)應(yīng)用很快又學(xué)會了將用戶和設(shè)備標(biāo)識文件偽裝成圖片,然后將/Pictures 這類公有目錄變成新的用戶隱私數(shù)據(jù)交換中心的新方案。
針對需要訪問文件權(quán)限的做法,Android 13 這次將媒體文件權(quán)限進(jìn)一步細(xì)分。已經(jīng)適配 Android 11的應(yīng)用(目標(biāo) API 等級 33)在 Android 13 中能夠獲取到的文件讀寫權(quán)限被分成了音頻、視頻和圖片,在實際使用過程中,應(yīng)用可以根據(jù)實際情況將這三種權(quán)限靈活組合起來。
P.S. 關(guān)于目標(biāo) API 等級的詳細(xì)說明,請參見《下載應(yīng)用這件事,Play 商店為什么比國內(nèi)軟件商店更好?》
同樣以微信為例,如果你安裝的是已經(jīng)適配了 Android 11 的 Play 商店版本,在 Android 13 中,微信的文件訪問權(quán)限申請以及文件訪問權(quán)限會變成下面這樣:

微信在 Android 13 中的表現(xiàn)
相比之下,SAF 則是 Google 最近幾年更加推薦的做法。此前在大多數(shù) Android 設(shè)備上,這種方法都以系統(tǒng)默認(rèn)的「文件」應(yīng)用為載體,app 無需調(diào)用任何文件訪問權(quán)限就能達(dá)成文件選擇的目標(biāo)。比如下圖中的 Google Keep:

沒有申請任何文件讀寫權(quán)限但依然可以選取并插入設(shè)備上的圖片文件
SAF 就像一座架在設(shè)備文件和應(yīng)用之間的橋梁,它可以以最小權(quán)限獲取的方式,訪問包含圖片、視頻、音頻和文檔在內(nèi)的大部分公共目錄文件。

Google 云端硬盤調(diào)用 SAF 后可選擇的文件類型一覽
而針對圖片和視頻調(diào)用,Android 13 向 iOS「取經(jīng)」,在 SAF 的基礎(chǔ)上打造了一套全新的照片選擇器。照片選擇器保留了 SAF 對隱私權(quán)限友好的特質(zhì),但比起簡陋的文件管理應(yīng)用,它還支持搜索、可以按時間排序,開發(fā)者也可以用相關(guān)的 API 接口中進(jìn)一步設(shè)定多選和文件數(shù)量限制。

Android 13 照片選擇器的使用示例,圖自 Google
雖然交互體驗相近,Android 13 的照片選擇器和 iOS 的相比是有差異的。
Android 13 的照片選擇器就像是一個圖片與視頻專用版 SAF,因為 SAF 伴隨分區(qū)存儲機(jī)制而來,照片選擇器也成為了為數(shù)不多的非 Android 13 獨占的新特性。至少對非大陸地區(qū)的 Android 設(shè)備而言不是——今年 5 月,Google 已經(jīng)通過 Google 系統(tǒng)更新的模塊化系統(tǒng)組件更新機(jī)制向 Android 11 及以上系統(tǒng)版本的設(shè)備推送了照片選擇器。如果你沒有用上,可能的原因不限于:
你的手機(jī)根本就不具備 Google 系統(tǒng)更新功能,國內(nèi)廠商一般而言都去掉了這一功能
你的手機(jī)里還沒有適配照片選擇器的應(yīng)用(我的手機(jī)里也沒有,如果你有,歡迎在評論區(qū)分享)
至于 iOS 那邊,照片選擇器的設(shè)計其實要更加合理一些:iOS 將照片選擇器設(shè)計成了應(yīng)用在選取圖片和視頻時必須采用的規(guī)范化流程,而非 Android 這邊本質(zhì)上依然需要應(yīng)用開發(fā)者憑自覺啟用的 SAF;不僅如此,iOS 也允許用戶根據(jù)實際情況選擇它的可見范圍,比如 QQ 我只想通過照片選擇器給 3 張,但微信卻可以給 5 張,在應(yīng)用中做到了「千人千面」,決定權(quán)則真正放在了用戶手中。
所以總體而言個人更喜歡 iOS 的設(shè)計,雖然目前它用起來更麻煩——最理想的解決方案嘛,當(dāng)然是用 Apple 的方式來推 Google 的規(guī)范了。
關(guān)于 SAF,另外一個值得一提的改動是 Android 13 不再允許應(yīng)用通過 SAF 訪問/Android目錄下的子目錄了。這個改動多少與此前開發(fā)者發(fā)現(xiàn)的一個文件讀寫漏洞有關(guān),對用戶而言最直觀的影響是,此前在 Android 12 中依然可以通過授予/Android 目錄訪問權(quán)限進(jìn)而訪問/Android/data 或 /Android/obb 等目錄的文件管理器,在 Android 13 中除了 root 就真的無計可施了。
▍前臺服務(wù)管理器與 Android 的后臺設(shè)計
對系統(tǒng)資源的管理直接影響到設(shè)備的續(xù)航和性能表現(xiàn),因此前臺服務(wù)與后臺管理一直以來也是 Android 系統(tǒng)更新的重要課題之一。
從原理上來說,前臺服務(wù)與后臺管理這兩件事是同一枚硬幣的兩面,Android 13 則為用戶帶來了對前臺服務(wù)的檢測和停用手段:在快速設(shè)置開關(guān)面板底部,我們可以看到一欄用于提示當(dāng)前正在運行前臺服務(wù)應(yīng)用數(shù)量的新操作區(qū)域,在底部被其他提示占用時,這個提示則會變成一個包含數(shù)字的氣泡按鈕。

前臺服務(wù)管理器入口的展開和收起形態(tài)
這就是前臺服務(wù)管理器(FGS),點擊展開 FGS 后即可看到當(dāng)前正在活躍的應(yīng)用,點擊對應(yīng)的「停止」按鈕就能一鍵讓應(yīng)用停止運行,可謂是相當(dāng)直接的系統(tǒng)管理工具了。

前臺服務(wù)管理器與系統(tǒng)通知
其次 Android 系統(tǒng)也會幫助用戶對前臺服務(wù)進(jìn)行監(jiān)督,具體的機(jī)制是,在以 24 小時為單位的時間長度內(nèi),如果某應(yīng)用的前臺服務(wù)運行超過 20 小時,系統(tǒng)就會向用戶發(fā)出提醒。這時點擊提醒也會跳轉(zhuǎn)到上述前臺服務(wù)任務(wù)管理器當(dāng)中。
前臺服務(wù)管理器在 Android 13 中的強(qiáng)調(diào),最大的意義在于重申了 Google 對現(xiàn)代 Android「劃掉多任務(wù)卡片」這一行為的定義:

前臺服務(wù)管理器、劃掉應(yīng)用卡片與強(qiáng)行停止的區(qū)別
早年玩機(jī)用戶所熟知的黑域、綠色守護(hù)和部分廠商的「劃卡強(qiáng)殺」設(shè)計,其實更接近最右側(cè)的「強(qiáng)行停止」,現(xiàn)在進(jìn)入應(yīng)用管理的詳情頁也依舊能夠看到這個按鈕。被強(qiáng)行停止的應(yīng)用會停止一切活動,一般來說不能再自行啟動,只能用戶或其它應(yīng)用手動拉起才能恢復(fù)運行。
多任務(wù)界面是真真切切的「應(yīng)用運行歷史記錄」。它不代表應(yīng)用的實際運行狀態(tài),劃走卡片只是取消了歷史記錄以及清除了最后交互過的「活動窗口」,應(yīng)用并不會立刻從運行內(nèi)存(RAM)中離開,通知、媒體播放行為等也能得到保留。

從前臺服務(wù)管理器停止 Tasker 后,Tasker 的多任務(wù)卡片依然保留
新的前臺服務(wù)管理器則可以暫停前臺服務(wù)并將應(yīng)用從 RAM 中驅(qū)離。需要注意的是,此時應(yīng)用只是停止了運行,并不會從多任務(wù)窗口中移除,這一考慮或許是為了方便用戶快速恢復(fù)任務(wù),同時減少系統(tǒng)資源消耗。
當(dāng)然,關(guān)于 Android 前臺服務(wù)的科普以及 Android 13 前臺服務(wù)管理器的更多細(xì)節(jié),我的同事此前寫過一篇更詳細(xì)的文章,感興趣的朋友可以前往那邊深入了解。
關(guān)聯(lián)閱讀:前臺服務(wù)管理器:如何手動在 Android 13 上「殺死」一個應(yīng)用
▍運行時權(quán)限,規(guī)范的不只是通知
聊了這么多照片選擇器,接下來我們再看看另一個 Android 13 向 iOS 學(xué)習(xí)的主打特性:通知運行時權(quán)限。
雖然通知管理體驗糟糕,但 iOS 的通知權(quán)限卻早已是運行時授予的了:一般而言,應(yīng)用會在首次運行時向彈出請求窗口向用戶請求許可,然后由用戶決定是拒絕還是許可。但在 Android 12 或更早的系統(tǒng)版本中,通知權(quán)限則是一個安裝時默認(rèn)授予權(quán)限,具體的行為也是可以由應(yīng)用開發(fā)者自己來定義的。

iOS 的運行時通知權(quán)限大家應(yīng)該很熟悉了
所以盡管 iOS 在通知管理上幾乎只做對了一件事,但 Android 和 iOS 后續(xù)留給用戶的通知管理體驗都挺糟糕的。
舉例來說,Android 平臺上的電池監(jiān)控類應(yīng)用一般會在通知中心保留一條常駐通知,并會不斷彈出新的通知來更新其中的信息。這一切并不需要用戶來許可,應(yīng)用也可以選擇「靜默通知」來盡量避免對用戶的打擾。
但類似的通知又要求應(yīng)用開發(fā)者的高度自覺與克制:誰不想多彈通知爭取一些用戶的注意力?走進(jìn)手機(jī)商場擺弄一下展示機(jī),光只是預(yù)裝應(yīng)用的通知就已經(jīng)能夠堆成長長的「瀑布」。所以某些定制系統(tǒng)(比如此前的 ColorOS)甚至?xí)诜莾?nèi)置白名單應(yīng)用安裝完畢后,直接「一刀切」默認(rèn)關(guān)閉所有通知。
更重要的是,在上面提到的前臺服務(wù)管理器一文中我們分享過一個觀點:
只要應(yīng)用保證通知正常顯示,它的前臺服務(wù)就能持續(xù)保持運行。
應(yīng)用除了通過通知來吸引機(jī)主的注意力,還可以借它獲取更多系統(tǒng)資源。在 Android 系統(tǒng)的設(shè)計中,前臺服務(wù)主要有兩大特點:即使用戶停止與應(yīng)用的交互,仍能繼續(xù)運行;執(zhí)行過程中必須顯示通知。后者是很多「毒瘤」應(yīng)用保活的常見手段,近年來隨著定制系統(tǒng)「殺后臺」問題突顯,也為不少常規(guī)應(yīng)用所用。
通知亂象背后所牽扯的問題可以說是由表至里的,正因為此,Android 比 iOS 更需要通知運行時權(quán)限。
所以在 Android 13 中這個功能就來了,只不過具體的操作辦法上和 iOS 的「強(qiáng)制二選一」有所不同:除了「允許」「不允許」兩項之外,用戶還可以劃走權(quán)限申請對話框。簡單來說,運行時權(quán)限雖然是一個 Android 13 的新特性,但適配了 Android 13 的應(yīng)用(target API 33)僅僅是獲得了自定義彈出權(quán)限申請對話框的時機(jī)這一優(yōu)勢,配合清晰直觀的用途說明,想要合理推送通知的 app 不用過多擔(dān)心用戶不給許可。

但同時它對其他應(yīng)用的限制也足夠強(qiáng)力,拒絕了通知,也就直接消除了通知打擾以及假借通知進(jìn)行后臺保活的可能性。從用戶角度出發(fā),通知運行時權(quán)限可能是 Android 13 最簡單、但也最有效的權(quán)限管理改進(jìn)之一。
最后,運行時權(quán)限這邊 Android 13 還參考 iOS 14 的做法將附近 Wi-Fi 設(shè)備的權(quán)限(NEARBY_WIFI_DEVICES)從附近設(shè)備(NEARBY_DEVICES)中剝離了出來。
這個運行時權(quán)限的實際作用也可以參考 iOS 的「本地網(wǎng)絡(luò)權(quán)限」。如果你有配置 Wi-Fi 或連接智能家居設(shè)備的經(jīng)歷,應(yīng)該不難理解我們可以通過「連接到同一 Wi-Fi」這個操作,來獲取同一局域網(wǎng)內(nèi)其他設(shè)備信息的做法。iOS 借本地網(wǎng)絡(luò)權(quán)限避免了這種情況,從某種程度上說也斬斷了惡意應(yīng)用窺探用戶隱私的一條路徑。
關(guān)聯(lián)閱讀:iOS 14 新增的本地網(wǎng)絡(luò)權(quán)限,要開給第三方 App 嗎?
而在 Android 這邊,由于此類信息過于敏感,早前獲取同一 Wi-Fi 設(shè)備這一權(quán)限是放在精確地理位置(ACCESS_FINE_LOCATION)權(quán)限下的,屬于最高優(yōu)先級的隱私權(quán)限。所以在 Android 12 引入附近設(shè)備權(quán)限后,Andorid 13 進(jìn)一步將這個權(quán)限從定位中分離出來,如果你需要連接同一局域網(wǎng)內(nèi)的其他設(shè)備,比如打印機(jī)、投影儀/投屏工具、音樂流播音箱、智能家居設(shè)備等,都可以通過新的附近 Wi-Fi 設(shè)備權(quán)限來進(jìn)行最小化獲取。

附近 Wi-Fi 設(shè)備的權(quán)限(NEARBY_WIFI_DEVICES)從附近設(shè)備(NEARBY_DEVICES)中剝離而來
附近 Wi-Fi 設(shè)備運行時權(quán)限是面向 target API 33 的,換句話說,只有適配了 Android 13 的應(yīng)用才能通過這一方式向用戶申請授權(quán)。

Google 對哪些應(yīng)用能夠拉起這個運行時權(quán)限限制得非常嚴(yán)格
另外,開發(fā)者文檔中也有幾個細(xì)節(jié)值得玩味:Google 不僅在 Android 13 中限制了設(shè)備直接通過本機(jī) Wi-Fi 發(fā)信功能(熱點、Wi-Fi Direct 等)探測附近設(shè)備的能力,還要求應(yīng)用必須聲明自己不會從這些 Wi-Fi 設(shè)備信息中推導(dǎo)地址位置信息方可通過此 API 獲取授權(quán),即便應(yīng)用已適配 Android 13。否則開發(fā)者必須像未適配 Android 13 的應(yīng)用一樣,只能通過精確地理位置權(quán)限來達(dá)成目的——而用戶對定位權(quán)限的授予一般而言是更為謹(jǐn)慎的。
▍IF 金獎進(jìn)化,主題好看、圖標(biāo)有爭議
當(dāng)你為手機(jī)換上一張喜歡的壁紙時,整個系統(tǒng)都會因為你的喜好而發(fā)生一些微妙的變化,壁紙的差異、取色結(jié)果的不確定性,將原生 Android 一直以來所堅持的那種定制化和個性化帶到了一個新的高度……

Material You 動態(tài)取色主題
Google 在 Android 12 中引入了全新的 Material Design 3 設(shè)計語言和 Material You 主題系統(tǒng),可能是當(dāng)時與 Google Pixel 團(tuán)隊緊密合作打造的這套多彩主題+單色圖標(biāo)反響不錯(它甚至還拿了IF 金獎),Google 很快便開始了 Material You 向整個 Android 生態(tài)的推進(jìn)工作。

小組件同樣也支持動態(tài)取色
在本次的 Android 13 更新中,Google 依然在完善 Material You。這套為原生 Android 準(zhǔn)備的多彩主題,在過去這段時間從開發(fā)者預(yù)覽版到測試版的使用過程中,的確也超越部分功能和特性,成為了讓我難以放下也不肯回去的一大理由。
很多時候我們的喜歡,就是來源于「好看」。Android 13 在此基礎(chǔ)上想要滿足的,是更為細(xì)致的色彩偏好。

Material You 的 Monet 取色方案
同樣一張壁紙,Monet 提取到的色彩方案也許并不能滿足所有人的喜好。在此前由 5 種色彩和 13 種亮度組合成 65 種取色的基礎(chǔ)上,Android 13 進(jìn)一步加入了色相(hue)和色度(chroma)來對顏色的生成過程進(jìn)行干預(yù),并由此延伸出了 6 套不同的 Material You 色彩風(fēng)格(styles)。
在 Android 13 中應(yīng)用任意一張壁紙,正常情況下(壁紙顏色單一除外)我們都能在 Pixel Launcher 的「壁紙和樣式」設(shè)置中看到壁紙顏色、基本顏色兩個大類、每個大類各 16 種動態(tài)取色方案。通過終端運行
dumpsys activity service com.android.systemui/.SystemUIService | grep -A 16 "mSystemColors"
指令獲取對應(yīng)信息可以發(fā)現(xiàn),Material You 動態(tài)顏色在 Android 13 中演化出了 SPOT、SPRITZ、VIBRANT、EXPRESSIVE、RAINBOW 以及 SALAD 六個分支,取色傾向和實際觀感各有不同。

通過終端應(yīng)用可獲取當(dāng)前主題方案的風(fēng)格名稱
其中 SPOT 對應(yīng) Android 12 中的 Material You 取色方案,SPRITZ 的顏色更加冷淡(也是個人最喜歡的方案),VIBRANT 色彩更為大膽,EXPRESSIVE 會選取壁紙中最跳躍的一種作為主色調(diào),RAINBOW 和 SALAD 則分別對應(yīng)「基本顏色」選項中的單色和撞色方案。

(動圖)壁紙顏色下的四種方案對比
除開壁紙,Google 早前為 Pixel 打造的那套 IF 金獎主題中,采用單色風(fēng)格、將圖標(biāo)主體特征抽象為幾何圖形并且能夠根據(jù)設(shè)備深、淺色主題切換配套樣式的圖標(biāo),也是一大組成元素。Android 13 將這套圖標(biāo)的生成與適配方法正式開放給了開發(fā)者,關(guān)于這個特性的詳細(xì)介紹,請參考此前我寫的另一篇文章。
關(guān)聯(lián)閱讀:下個 Android 大版本更新,Google 想為你「眾籌」一套圖標(biāo)包
根據(jù)不完全統(tǒng)計,截至發(fā)稿已經(jīng)有超過 40 款應(yīng)用跟進(jìn)了主題圖標(biāo)設(shè)計,其中既有小眾的獨立應(yīng)用,也有像 Reddit、WhatsApp 這樣的大廠作品(具體請參見上方的《已適配主題圖標(biāo)的應(yīng)用清單》),可見有不少用戶對 Google 試圖統(tǒng)一主屏風(fēng)格的做法還是比較認(rèn)可的。

啟用主題圖標(biāo)后的主屏與部分適配主題圖標(biāo)的應(yīng)用一覽
但另一方面,前段時間我也在微博收到了不少評論,認(rèn)為主題圖標(biāo)的存在進(jìn)一步削弱了圖標(biāo)應(yīng)有的辨識度;而且審美本就是一件主觀的事情,主題圖標(biāo)在開發(fā)者當(dāng)中目前也有爭議,比如純純寫作的開發(fā)者就認(rèn)為這種設(shè)計「像小靈通」,并且明確表示過暫時不會為純純寫作進(jìn)行適配。
▍和糟糕的中文譯名說拜拜
在 iOS 平臺使用 Apple Music(國區(qū))和在 Android 平臺使用 YT Music 的用戶,多少都見過一些尷尬到「腳趾摳地」的中文譯名:打倒男孩、多杰貓、威肯……
前者比較麻煩,但后者其實一直以來都可以通過類似 iOS 單獨為應(yīng)用設(shè)置顯示語言的方法來進(jìn)行規(guī)避。
Android 13 終于為我們帶來了能夠滿足這一需求的按應(yīng)用設(shè)定語言偏好功能,相關(guān)設(shè)置位于「設(shè)置 > 系統(tǒng) > 語言和輸入法 > 應(yīng)用語言」下。
在早前的開發(fā)者預(yù)覽版本中,這個頁面會將設(shè)備上所有應(yīng)用都羅列出來,這種做法帶來了一個問題:系統(tǒng)在設(shè)置中提供的語言選項,應(yīng)用實際上可能并不支持。因而在正式版中,只有那些為應(yīng)用配置了語言文件和清單聲明的應(yīng)用才會出現(xiàn)在按應(yīng)用設(shè)定語言偏好頁面當(dāng)中。

應(yīng)用語言設(shè)置菜單
在升級至 Android 13 正式版后,如果你想單獨設(shè)置語言偏好的應(yīng)用不在設(shè)置列表當(dāng)中,不妨帶上版本號、機(jī)型和適配參考向應(yīng)用開發(fā)者進(jìn)行反饋;如果你不是很想等,也可以在連接電腦、手機(jī)開啟開發(fā)者選項并授予 ADB 調(diào)試權(quán)限后,執(zhí)行:
adb shell settings put global settings_app_locale_opt_in_enabled false
來強(qiáng)制為所有應(yīng)用開啟語言設(shè)置選項。
▍媒體通知換臉,變的不只是外觀
Android 近幾個大版本更新中,媒體通知都是一定會「挨刀」的那一個。不過比起 Android 12,Android 13 正式版的媒體通知設(shè)計倒是重新引入了幾分多彩與靈動。
設(shè)計上來說,新版媒體通知卡片直接以媒體播放應(yīng)用提供的專輯封面為背景,操控按鈕、播放設(shè)備選擇按鈕的配色也提取自專輯封面,不再與 Material You 動態(tài)取色掛鉤;同時也不再像以往那樣單獨為收起狀態(tài)提供布局,無論是通知中心、快速設(shè)置開關(guān)面板還是鎖屏,均以一種尺寸進(jìn)行呈現(xiàn)。
交互方面,Google 為 Android 13 帶來了更加符合 Material Design 3 控件風(fēng)格的新版進(jìn)度條,播放狀態(tài)下進(jìn)度條會以波浪形態(tài)不斷躍動,拖動調(diào)節(jié)進(jìn)度時則會呈現(xiàn)出受壓拉直的效果,主要控制按鈕的動畫也非常類似;這種因為操作而產(chǎn)生形狀改變的控件動畫,Android 系統(tǒng)的鎖屏密碼鍵盤、Google 計算器中也早有應(yīng)用。

新版媒體通知卡片的主要動畫效果
另外,如上圖所示,媒體輸出設(shè)備的選擇彈窗也由此前的底部彈出式變成了采用按鈕縮放動畫的居中彈窗,彈窗色彩則采用了 Material You 動態(tài)顏色。

Apple Music 與 YT Music 在 Android 13 中的媒體通知卡片
當(dāng)然,升級之后你可能會留意,部分應(yīng)用的媒體通知卡片(比如截至發(fā)稿時的 Apple Music)并不像 YT Music 這樣擁有 Material Design 樣式的控制按鈕,這是因 Android 13 將媒體操作的讀取來源從此前的MediaStyle切換到了PlaybackState。后者相比之下可以為開發(fā)者提供更豐富的媒體操作按鈕定制空間。
如果應(yīng)用沒有包含 PlaybackState 或面向更低版本的 Android 系統(tǒng)開發(fā),在 Android 13 中則不會有新的操控按鈕樣式。
▍復(fù)制了什么東西,返回又將去到哪里?
在手機(jī)上進(jìn)行復(fù)制粘貼操作,我們偶爾也會問自己這樣的問題:我剛剛選中的文本范圍是不是足夠精確、我真的復(fù)制到了自己想要的內(nèi)容嗎?
Android 13 新增的復(fù)制預(yù)覽懸浮窗,解決的就是這樣的問題。復(fù)制文本、圖片后,系統(tǒng)會在左下角彈出一個類似截圖預(yù)覽的窗口為我們復(fù)制的內(nèi)容提供一個簡單的預(yù)覽。

文本復(fù)制預(yù)覽與圖片編輯界面
此時我們還可以直接點擊預(yù)覽進(jìn)入編輯頁面,將文本粘貼后的二次編輯工作變得更加簡單;如果復(fù)制的是圖片,編輯操作則會調(diào)用 Google Pixel 內(nèi)置的截圖標(biāo)記工具來完成。
此外,Android 13 也為密碼這樣的敏感內(nèi)容增加了可以手動標(biāo)記隱藏預(yù)覽的標(biāo)簽聲明;比較遺憾的是,此前曾出現(xiàn)在測試版本中的操作建議按鈕(比如復(fù)制網(wǎng)址時直接提供瀏覽器跳轉(zhuǎn)打開按鈕)在正式版中似乎被拿掉了。

隱私內(nèi)容隱藏
除了復(fù)制粘貼,這種對操作結(jié)果預(yù)期的增強(qiáng),也貫穿于 Android 13 的其它多處改進(jìn)當(dāng)中。
比如 Android 13 為添加快速設(shè)置開關(guān)這一操作增加了 API 接口,開發(fā)者可以通過接入這個 API 的方式來方便用戶直接向快速設(shè)置面板添加開關(guān),省去了手動翻找、拖拽的麻煩;再比如 Android 13 也優(yōu)化了啟動動畫的 API 接口,在直接跳轉(zhuǎn)到應(yīng)用特定界面(activity)而非冷啟動場景中,開發(fā)者也可以根據(jù)自己的喜好選擇是否提供開屏動畫。
最有代表性的是,Android 13 還在開發(fā)者選項中加入了一項名為「預(yù)測性返回手勢動畫」的開關(guān)。

預(yù)測性返回手勢動畫開關(guān)
在 Android 平臺上,跳轉(zhuǎn)行為的發(fā)起和結(jié)束,有時候都不是以應(yīng)用為對象的,提供交互界面的也可以是各種活動窗口(activity)。而根據(jù) Google 的介紹,預(yù)測性返回手勢動畫的引入想解決正是不確定返回操作執(zhí)行后交互界面將會被帶去哪個位置的問題。
預(yù)測性返回手勢在開啟開發(fā)者選項后就可以體驗了,知名備份工具Swift Backup在近期的更新中就進(jìn)行了適配,在主界面使用返回手勢退出應(yīng)用時,我們可以通過動畫看到主屏,然后決定是否要完成返回操作。

預(yù)測性返回手勢動畫效果
從 Google 的規(guī)劃來看,這個功能很有可能會花上好幾年的時間進(jìn)行完善和打磨,最終想要實現(xiàn)的效果是可以在執(zhí)行返回操作前預(yù)覽所有可能到達(dá)的頁面情況,而不是像目前我們能夠體驗到的這樣僅限主屏。
▍app 需要鬧鐘叫醒,但也不能隨便用
首先需要大家理解的一個概念是:和人一樣,Android 平臺中的應(yīng)用也需要鬧鐘。
在滴答清單的「設(shè)置 > 聲音、通知與提醒 > 高級設(shè)置」中,你就能看到一個名為「鬧鐘模式」的選項。開啟后,滴答清單的通知提醒將變得更為準(zhǔn)時,但就像這個設(shè)置說明所寫的那樣,即便你關(guān)掉了所有給自己用的鬧鐘,你的手機(jī)狀態(tài)欄可能會因此留下一個消不掉的鬧鐘圖標(biāo)。

滴答清單的「鬧鐘模式」
這里滴答清單所用到的,正是很多依賴定時執(zhí)行任務(wù)或發(fā)出提醒的應(yīng)用(比如 Tasker 也用)都會用到的精確鬧鐘。根據(jù)應(yīng)用內(nèi)設(shè)置的不同,鬧鐘會在既定的時間拉起應(yīng)用,幫助應(yīng)用準(zhǔn)時完善用戶設(shè)置好的任務(wù)。
問題在于,通過精確鬧鐘喚醒應(yīng)用是一種資源消耗極強(qiáng)、Google 也非常不推薦的定時任務(wù)規(guī)劃手段(根據(jù) Google 的開發(fā)者文檔,精確鬧鐘可以隨時將設(shè)備從 Doze 狀態(tài)中喚醒)。從提升續(xù)航和規(guī)范化的角度出發(fā),Google 在 Android 13 中為設(shè)置精確鬧鐘這一行為引入了一項專門的權(quán)限:鬧鐘與提醒。

Android 13 正式版的鬧鐘與提醒權(quán)限設(shè)置
現(xiàn)階段,你可以在 Android 13 正式版的「設(shè)置 > 應(yīng)用 > 特殊應(yīng)用權(quán)限」中找到「鬧鐘與提醒」權(quán)限的管理頁面。雖然目前 Android 13 會在安裝時為所有應(yīng)用默認(rèn)授予這一權(quán)限,但因為它現(xiàn)在與 API 等級 33 直接掛鉤,Google 可以采用更新 Play 商店政策要求的方式來對開發(fā)者的使用行為進(jìn)行限制。
根據(jù)最新的策略聲明,從 2023 年 7 月 31 日開始,這項權(quán)限將僅向鬧鐘、計時器、日歷這類以通知提醒為核心功能的 app 開放,推測后續(xù) Google 或許會通過將權(quán)限設(shè)置為運行時授予這樣的方式來幫助用戶更好地控制應(yīng)用行為,避免精確鬧鐘對設(shè)備續(xù)航能力的影響。
▍旁加載與自動化,都沒那么「方便」了
對 API 接口和系統(tǒng)功能的規(guī)范化使用其實是 Android 系統(tǒng)每次更新的隱藏主線之一,除了上面提到的內(nèi)容,Android 13 正式版也會為很多依賴旁加載(sideload)方式進(jìn)行安裝的應(yīng)用和部分自動化工具帶來麻煩。
一方面,Android 13 正式版通過對應(yīng)用安裝來源的判斷,對非常規(guī)來源的應(yīng)用進(jìn)行了功能限制。如果應(yīng)用并非通過 Play 商店進(jìn)行安裝(比如旁加載或第三方應(yīng)用商店),我們將無法直接為這些應(yīng)用開啟無障礙選項或授予它們讀取「設(shè)備和應(yīng)用通知」的權(quán)限。

非常規(guī)來源的應(yīng)用無法直接開啟通知使用權(quán)限和無障礙功能
要繞過這些限制,我們必須手動前往應(yīng)用的詳情設(shè)置頁面,然后選擇左上角菜單中的「允許受限制的設(shè)置」并通過身份驗證來進(jìn)行解鎖。

手動解除限制的方式
另一方面,此前被 Tasker 這類自動化工具所依賴的系統(tǒng)日志讀取接口,在 Android 13 中也受到了大幅限制。Android 13 要求應(yīng)用在每次讀取系統(tǒng)日志時都向用戶發(fā)出授權(quán)申請,并且權(quán)限授予選項僅提供「允許訪問一次」和「不允許」兩種選擇,直接抹除了自動化工具和剪貼板后臺同步 app 在后臺持續(xù)監(jiān)測系統(tǒng)日志并執(zhí)行關(guān)聯(lián)任務(wù)的能力。

Tasker 在 Android 13 中遭遇的問題
關(guān)于系統(tǒng)日志的讀取,@Esperdev的高級技術(shù)編輯 Mishaal Rahman 在這串推文分享了更多背景,包括此前 Android 平臺上的跨平臺剪貼板應(yīng)用如何利用這個權(quán)限繞過 Google 的后臺剪貼板讀寫限制,感興趣的朋友可前往一讀。
▍小結(jié)
從 Android 8.0 引入 LDAC 傳輸協(xié)議開始,Google 便一直在通過系統(tǒng)版本更新的方式為 Android 增強(qiáng)音視頻標(biāo)準(zhǔn)的兼容能力,同時也得益于 Android 平臺的開放性,很多新生標(biāo)準(zhǔn)在 Android 生態(tài)內(nèi)也能以系統(tǒng)升級的方式得到支持。比如這次的 Android 13 正式版就新增了對低功耗(LE)音頻和 MIDI 2.0 支持,同時還完善了 Camera2 API 對 HDR 視頻的處理能力。
此外,還有包含DSU性能優(yōu)化、空間音頻等更為底層的功能變化,Google 也并未在正式版的更新日志中提及。
原文地址:http://www.myzaker.com/article/6305b167b15ec0336b638324
轉(zhuǎn)載請注明:向 iOS「取經(jīng)」?這篇文章帶你看懂 Android 13 的 9 個重要更新 | 快導(dǎo)航網(wǎng)







川公網(wǎng)安備51012402001058號