android 5.0 - 2014年
引入了material design
android 6.0 - 2015年 - API 23
運(yùn)行時(shí)權(quán)限管理
用戶可直接在運(yùn)行時(shí)管理應(yīng)用權(quán)限,這種模式讓用戶能夠更好地了解和控制權(quán)限。
應(yīng)用鏈接 App Link
避免使用deep link時(shí), 彈出的多瀏覽器選擇對(duì)話框. 需要?jiǎng)?chuàng)建一個(gè)文件向google官方進(jìn)行驗(yàn)證.
android 7.0 - 2016年
多窗口支持
用戶現(xiàn)在可以在屏幕上同時(shí)彈出兩個(gè)應(yīng)用, 而無(wú)需頻繁地切換應(yīng)用.
給ART編譯器引入了Just in Time (JIT) 功能
幾個(gè)概念要清晰.
先有的dalvik編譯器, Dalvik虛擬機(jī)可以看做是一個(gè)針對(duì)android平臺(tái)定制的Java VM, 在內(nèi)存占用和性能方面做了優(yōu)化.
JIT是指及時(shí)編譯, 普通的dalvik編譯是, 在代碼運(yùn)行時(shí), 每次遇到一個(gè)新類, dalvik就執(zhí)行一次字節(jié)碼到機(jī)器碼的編譯動(dòng)作, JIT是對(duì)那些高頻調(diào)用的代碼, 緩存對(duì)應(yīng)的機(jī)器碼, 這樣能提高些運(yùn)行性能. 因此, JIT不對(duì)所有dex代碼進(jìn)行編譯,而是只編譯執(zhí)行次數(shù)較多的dex為本地機(jī)器碼.
ART和AOT是一個(gè)概念, AOT是"Ahead Of Time"的縮寫, 是指在代碼在運(yùn)行前就已經(jīng)有了機(jī)器碼.
應(yīng)用在第一次安裝的時(shí)候,字節(jié)碼就會(huì)預(yù)先編譯成機(jī)器碼,使其成為真正的本地應(yīng)用。之后打開App的時(shí)候,不需要額外的翻譯工作,直接使用本地機(jī)器碼運(yùn)行,因此運(yùn)行速度提高。
ART的缺點(diǎn)是會(huì)多占用一些手機(jī)上的存儲(chǔ)空間, 并且應(yīng)用的安裝時(shí)間會(huì)長(zhǎng)一些.
android 8.0 - 2017年 - API 26
引入了畫中畫模式, 給視頻類應(yīng)用使用.
android 9.0 - 2018年
劉海屏(顯示屏缺口)支持
android 10 - 2019年
支持可折疊設(shè)備
提供了Thermal API, 監(jiān)控手機(jī)溫度狀態(tài)
手機(jī)過(guò)熱時(shí), 視頻app可以降低分辨率和音量處理.
android 11 - 2020年 - API 30
自動(dòng)權(quán)限重置
如果用戶幾個(gè)月未與應(yīng)用互動(dòng),系統(tǒng)會(huì)自動(dòng)重置應(yīng)用的敏感權(quán)限。
android 12 - 2021年 - API 30
應(yīng)用啟動(dòng)畫面 使用新的API SplashScreen
讓各個(gè)應(yīng)用的啟動(dòng)畫面有標(biāo)準(zhǔn)化處理
應(yīng)用自動(dòng)更新
借助新的 API 方法,安裝程序應(yīng)用可以執(zhí)行應(yīng)用更新而無(wú)需用戶確認(rèn)。
android 13 - 2022年 - API 33
通知的運(yùn)行時(shí)權(quán)限
應(yīng)用的通知默認(rèn)處于關(guān)閉狀態(tài),等到用戶熟悉您的應(yīng)用之后,再請(qǐng)求他們授予任何權(quán)限
android 14 - 2023年 - API 34
新提供了截屏檢測(cè)
final Activity.ScreenCaptureCallback screenCaptureCallback =
new Activity.ScreenCaptureCallback() {
@Override
public void onScreenCaptured() {
// Add logic to take action in your app.
}
};
android 15 - 2024年
通知管理優(yōu)化
通知限頻,能減少同一個(gè)應(yīng)用反復(fù)發(fā)通知,這樣就不會(huì)被一堆提醒煩到了