今天更新新版android SDK,發(fā)現(xiàn)對xml配置文件中各個控件屬性設(shè)置更加嚴(yán)謹了,以前在strings.xml里配置的帶有 %s,%f 等變量格式的符號要求更加成%1$s,%1$f這樣的符號來代替,其中%1表示第一個位置的變量, $s表示為字符串類。
站在用戶的角度思考問題,與客戶深入溝通,找到雙柏網(wǎng)站設(shè)計與雙柏網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站設(shè)計制作、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名與空間、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋雙柏地區(qū)。
[img]最近在做app的Android S適配,targetSDK切到了31,記錄一下適配的主要內(nèi)容
compileSdkVersion = 'android-S'
minSdkVersion = 31
targetSdkVersion = 'S'
帶有 intents-filter 的組件(activity,receiver,provider,service)必須顯示的
設(shè)置 android:exported, 否則 app 無法安裝
創(chuàng)建 Pending intent 的時候,必須加上聲明mutability的flag,PendingIntent.FLAG_MUTABLE 或者 PendingIntent.FLAG_IMMUTABLE,
通常情況使用 PendingIntent.FLAG_IMMUTABLE
如果app用到Alarmmanager 的設(shè)置準(zhǔn)點alarm的接口,如: setAlarmClock() setExact()
setExactAndAllowWhileIdle() ,需要在manifest中申明使用 android.permission.SCHEDULE_EXACT_ALARM 權(quán)限
當(dāng)持有這個權(quán)限的時候才可以使用這些接口,這個權(quán)限用戶可以通過系統(tǒng)設(shè)置中的開關(guān)收回,權(quán)限如果被收回,之前調(diào)用這些接口設(shè)置的alarm都會被取消,所以需要做幾個事情:
用戶點擊了一個notification或者notification上的一個action button,如果pendingintent調(diào)起
的是receiver或者service,那么在這個receiver或者service中,不能調(diào)用 startActivity() 來調(diào)起
一個Activity。
解決辦法:在創(chuàng)建notification時傳入的pendingintent直接指向?qū)?yīng)的activity。
如果之前service中所做的工作比較多,可以用一個透明activity作為跳轉(zhuǎn),即notification先跳轉(zhuǎn)到這個activity,activity中再把之前的service調(diào)起,然后activity finish。
自定義通知中的自定義布局區(qū)域有變化, GUI 可能需要調(diào)整:
App 如果動態(tài)申請 ACCESS_FINE_LOCATION 權(quán)限,必須同時也申請 ACCESS_COARSE_LOCATION 權(quán)限。當(dāng)同時申請這兩個權(quán)限時,系統(tǒng)權(quán)限對話框會允許用戶選擇授予精確定位權(quán)限還是粗略定位權(quán)限:
“安卓系統(tǒng)最高版本是Android S,也就是Android 12 beta版本。目前,iQOO官方已經(jīng)開始適配Android 12系統(tǒng)了。正在進行開發(fā)者招募,適配相關(guān)軟件。 小米的MIUI13在今年年底發(fā)布,相信也會是Android 12版本適配的新版MIUI。
Android就是Android系統(tǒng)??!中文名叫安卓系統(tǒng)。
那些第三方深度開發(fā)的系統(tǒng),比如MIUI,F(xiàn)lyme,CM,等等等,它們才叫基于Android系統(tǒng)開發(fā)的。