一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Android 13帶來了哪些新功能?需要哪些適配工作?

谷歌開發(fā)者 ? 來源:BennuCTech ? 作者:BennuC ? 2022-11-04 10:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

目前 Google 已經(jīng)發(fā)布了 Android 13 的正式版,雖然國內的手機能用上 Android 13 還有一段時間,不過開發(fā)者們可以通過模擬器來體驗,那么我們來看看 Android 13 都有哪些重要的改變,我們適配的話需要做哪些工作?

新功能和 API

先來看看 Android 13 帶來了哪些新的改變,這里我挑了一些對我們比較重要的來說。具體可以參考:

https://developer.android.google.cn/about/versions/13/features

帶主題的應用圖標

讓應用圖標隨著主題換色。

首先應用要提供自適應圖標和單色應用圖標,并通過清單中的 元素指向該單色應用圖標。

然后需要用戶在系統(tǒng)設置中啟用帶主題的應用圖標。

這樣系統(tǒng)會根據(jù)壁紙和主題來確定色調顏色,然后該顏色將應用于單色應用圖標。

剪貼板預覽

從 Android 13 開始,將內容添加到剪貼板時,我們可以預覽復制的內容。如下:0d9bebec-5be3-11ed-a3b6-dac502259ad0.gifAndroid 13 也加入了對剪貼板敏感內容的脫敏處理,后面會詳細說。

提高了啟動畫面效率 Android 12 引入了 Splash Screen API,可以幫助開發(fā)者更好的開發(fā)啟動頁面,果不其然 Android 13 就進行了完善,包括下面兩項改動:
  • 系統(tǒng)會直接從 AnimatedVectorDrawable 推斷動畫時長。在 Android 13 之前,必須直接設置 windowSplashScreenAnimationDuration;

  • 使用新的 windowSplashScreenBehavior 屬性可以更好地控制應用是否始終在 Android 13 及更高版本中的啟動畫面上顯示該圖標。

廣播接收

在以前任何應用都可以向動態(tài)注冊的接收器發(fā)送不受保護的廣播,除非該接收器受簽名權限的保護。Android 13 允許用戶指定是否接受外部應用的廣播,前提是啟用了DYNAMIC_RECEIVER_EXPLICIT_EXPORT_REQUIRED 兼容性框架 (默認是關閉的)。

在注冊廣播的時候設置一個 Flag,如下:

context.registerReceiver(sharedBroadcastReceiver, intentFilter,
    RECEIVER_EXPORTED)


context.registerReceiver(privateBroadcastReceiver, intentFilter,
    RECEIVER_NOT_EXPORTED)

注意: 如果啟用了 DYNAMIC_RECEIVER_EXPLICIT_EXPORT_REQUIRED,在注冊廣播的時候就必須設置 RECEIVER_EXPORTED 或 RECEIVER_NOT_EXPORTED。

照片選擇器

Android 13 提供了照片選擇器,這樣無需向應用授予整個媒體庫的訪問權限。

使用照片選擇器需要 1.6.0-alpha05 或更高版本的 androidx.activity 庫,主要 API:
  • PickVisualMedia,用于選擇單張圖片或單個視頻。

  • PickMultipleVisualMedia,用于選擇多張圖片或多個視頻。

示例代碼如下:

val pickMedia = registerForActivityResult(PickVisualMedia()) { uri ->
    if (uri != null) {
        Log.d("PhotoPicker", "Selected URI: $uri")
    } else {
        Log.d("PhotoPicker", "No media selected")
    }
}


pickMedia.launch(PickVisualMediaRequest(PickVisualMedia.ImageAndVideo))


pickMedia.launch(PickVisualMediaRequest(PickVisualMedia.ImageOnly))


pickMedia.launch(PickVisualMediaRequest(PickVisualMedia.VideoOnly))


val mimeType = "image/gif"
pickMedia.launch(PickVisualMediaRequest(PickVisualMedia.SingleMimeType(mimeType)))
附近 WIFI 設備新權限 Android 13 之前針對 WIFI 的權限是 ACCESS_FINE_LOCATION,即使我們不想定位只想查詢一下附近的 WIFI。Android 13 提供了一個新的運行時權限 NEARBY_WIFI_DEVICES 來專門針對這種情況,這個權限影響的 API 如下:
  • WifiManager

    • startLocalOnlyHotspot()

  • WifiAwareManager

    • attach()

  • WifiAwareSession

    • publish()

    • subscribe()

  • WifiP2pManager

    • addLocalService()

    • connect()

    • createGroup()

    • discoverPeers()

    • discoverServices()

    • requestDeviceInfo()

    • requestGroupInfo()

    • requestPeers()

  • WifiRttManager

    • startRanging()

使用以上 API 需要申請 NEARBY_WIFI_DEVICES 權限。

精確鬧鐘權限

Android 13 提供了一個新的鬧鐘權限 USE_EXACT_ALARM,它類似于 SCHEDULE_EXACT_ALARM 不過是自動授權的,不需要用戶手動授權。

Google 對這個權限的要求是必須是鬧鐘、計時器或提供活動通知的日歷應用才可以使用,Google Play 會對使用這個權限的應用進行審核。不過目前國內還沒有限制,后續(xù)各大應用市場應該也會跟進限制。

適配 Android 13

下面來看看適配 Android 13 需要注意哪些事項。這里只列舉一些比較常用的功能,全部內容可以參考:

https://developer.android.google.cn/about/versions/13/behavior-changes-all 通知的運行時權限

Android 13 (API 級別 33) 引入了運行時通知權限 POST_NOTIFICATIONS,如果應用以 Android 13 為目標平臺,當需要發(fā)送通知的時候就需要動態(tài)請求該權限,否則無法發(fā)出通知。

注意:媒體相關的通知不受這個權限的影響,依然可以正常進行通知;前臺服務的通知則受本權限影響。

可以通過 NotificationManager 的 areNotificationsEnabled() 來檢查應用是否可以發(fā)送通知。

剪切板脫敏

上面我們提到 Android 13 提供了剪切板預覽功能,但是如果復制的是敏感內容的話,可以在調用 ClipboardManager#setPrimaryClip() 之前向 ClipData 的 ClipDescription 添加一個標志,這樣預覽的時候就看不到敏感內容了。

代碼如下:

// When your app targets API level 33 or higher
clipData.apply {
    description.extras = PersistableBundle().apply {
        putBoolean(ClipDescription.EXTRA_IS_SENSITIVE, true)
    }
}


// If your app targets a lower API level
clipData.apply {
    description.extras = PersistableBundle().apply {
        putBoolean("android.content.extra.IS_SENSITIVE", true)
    }
}

添加標志后的效果如下:

0db5c5ee-5be3-11ed-a3b6-dac502259ad0.png

附近 WIFI 設備新權限

上面提到了,針對附近 WIFI 設備提供了一個新的運行時權限 NEARBY_WIFI_DEVICES。

如果應用不會使用 WIFI 相關 API 進行定位,那么可以將 android:usesPermissionFlags 屬性設置為 neverForLocation:

<manifest ...>
     <uses-permission android:name="android.permission.NEARBY_WIFI_DEVICES"
                     android:usesPermissionFlags="neverForLocation" /> 
    <application ...>
        ...
    application>
manifest>

因為 NEARBY_WIFI_DEVICES 只在 Android 13 上,所以我們還要保留 ACCESS_FINE_LOCATION 以應對 Android 12 及以下設備,不過可以為其設置最高 SDK 版本,如下:

<manifest ...>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"
                     android:maxSdkVersion="32" /> 
    <application ...>
        ...
    application>
manifest>

細化媒體權限 如果應用以 Android 13 為目標平臺,那么如果要訪問媒體文件時就不能像之前那樣請求 READ_EXTERNAL_STORAGE 權限,Android 13 提供了更加細化的權限,必須請求以下權限來代替:

媒體類型

請求權限

圖片和照片

READ_MEDIA_IMAGES
視頻 READ_MEDIA_VIDEO
音頻文件 READ_MEDIA_AUDIO

這樣可以更加保護用戶的隱私。

如果同時請求 READ_MEDIA_IMAGES 權限和 READ_MEDIA_VIDEO 權限,只會顯示一個系統(tǒng)權限對話框。

注意: 如果您的應用只需要訪問圖片、照片和視頻,請考慮使用照片選擇器,而不是聲明 READ_MEDIA_IMAGESREAD_MEDIA_VIDEO 權限。

后臺使用身體傳感器的新權限

如果應用以 Android 13 為目標平臺,并且在后臺運行時需要訪問身體傳感器信息,那么除了現(xiàn)有的 BODY_SENSORS 權限外,還需要聲明新的 BODY_SENSORS_BACKGROUND 權限。

總結

以上就是 Android 13 版本中對開發(fā)者來說比較關心的新功能和適配方案,如果想了解更全面的信息,可以參考官方網(wǎng)站


審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Android
    +關注

    關注

    12

    文章

    3973

    瀏覽量

    130230
  • 模擬器
    +關注

    關注

    2

    文章

    894

    瀏覽量

    44397

原文標題:Android 13 帶來了哪些新功能?需要哪些適配工作?| 開發(fā)者說·DTalk

文章出處:【微信號:Google_Developers,微信公眾號:谷歌開發(fā)者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【文章轉載】CANoe產(chǎn)品體系19版本新功能(下) - 基礎功能與XIL測試

    新版本持續(xù)為智能電動網(wǎng)聯(lián)汽車軟件開發(fā)測試帶來新功能,IDE開發(fā)環(huán)境支持.NET8.0、Python、MATLAB2024b,VisualStudioCode集成測試開發(fā)和調試功能,支持
    的頭像 發(fā)表于 06-25 10:03 ?242次閱讀
    【文章轉載】CANoe產(chǎn)品體系19版本<b class='flag-5'>新功能</b>(下) - 基礎<b class='flag-5'>功能</b>與XIL測試

    如何在i.mx8mq的android13上啟用Widevine DRM?

    /widevine 文件夾。 2. Android 13 顯示不支持。 Android 13 中沒有 vendor/widevine 文件夾。 那么,如何在
    發(fā)表于 04-11 06:44

    NVIDIA NIM微服務現(xiàn)已推出

    生成式 AI 為 PC 和工作帶來了新功能,包括游戲助手、增強的內容創(chuàng)作和生產(chǎn)力工具等。
    的頭像 發(fā)表于 04-08 16:56 ?509次閱讀

    軟件更新 | 你期待的新功能來了!TSMaster 202502 新版本亮點搶先看!

    備受期待的TSMaster202502最新版終于來了!在本月更新中,我們?yōu)橛脩?b class='flag-5'>帶來了超多全新功能,旨在進一步提升軟件的性能、靈活性與用戶體驗。接下來,我們將為您詳細介紹本次更新的亮點內容,幫助
    的頭像 發(fā)表于 03-07 20:03 ?610次閱讀
    軟件更新 | 你期待的<b class='flag-5'>新功能來了</b>!TSMaster 202502 新版本亮點搶先看!

    Android Studio Ladybug Feature Drop版本的新功能

    Android Studio Ladybug Feature Drop (2024.2.2) 穩(wěn)定版已推出!
    的頭像 發(fā)表于 03-03 16:13 ?514次閱讀
    <b class='flag-5'>Android</b> Studio Ladybug Feature Drop版本的<b class='flag-5'>新功能</b>

    Galaxy S25系列發(fā)布:One UI 7帶來創(chuàng)新功能

    搭載了全新的One UI 7操作系統(tǒng),為用戶帶來了更加便捷、智能的使用體驗。 One UI 7操作系統(tǒng)引入了多項新功能,其中“Now Brief”功能尤為引人注目。該功能能夠根據(jù)用戶一
    的頭像 發(fā)表于 01-24 10:31 ?778次閱讀

    新思科技LucidShape 2024.09新增功能

    LucidShape的最新版本2024.09帶來了一系列新功能與增強功能,旨在解決光學開發(fā)者面臨的最常見和最復雜的挑戰(zhàn)。從微透鏡陣列(MLA)的自動掩模計算,到高級分析功能的改進,Lu
    的頭像 發(fā)表于 01-21 09:16 ?651次閱讀
    新思科技LucidShape 2024.09新增<b class='flag-5'>功能</b>

    Amazon Q Business新功能發(fā)布,助力企業(yè)提效

    近日,在備受矚目的2024年亞馬遜云科技re:Invent全球大會上,一款旨在提升企業(yè)內部工作效率的強大工具——Amazon Q Business,迎來了新功能的發(fā)布。 Amazon Q
    的頭像 發(fā)表于 12-24 10:42 ?497次閱讀

    Amazon Q Business發(fā)布新功能 助力企業(yè)提升內部工作效率

    新功能旨在提升Amazon Q Business和Amazon Q in QuickSight的洞察能力,增強跨應用的生成式AI體驗,為流行的商業(yè)應用提供50余種操作,并簡化復雜工作流程的自動化方式
    的頭像 發(fā)表于 12-19 15:29 ?448次閱讀

    飛凌嵌入式RK3576核心板已適配Android 14系統(tǒng)

    FET3576-C核心板此前已提供了Linux 6.1.57系統(tǒng),為了滿足更多客戶的需求,飛凌嵌入式近日又為其成功適配Android 14系統(tǒng)——硬件性能卓越的核心板與Android 14的深度組合,將為用戶
    的頭像 發(fā)表于 11-14 10:59 ?1362次閱讀
    飛凌嵌入式RK3576核心板已<b class='flag-5'>適配</b><b class='flag-5'>Android</b> 14系統(tǒng)

    飛凌嵌入式FET527N-C核心板現(xiàn)已適配Android 13

    飛凌嵌入式FET527N-C核心板與Android13系統(tǒng)的結合,為嵌入式設備領域帶來了新的發(fā)展機遇。這一結合不僅提升了核心板的性能和兼容性,也為用戶提供了更為豐富和流暢的使用體驗。未來,飛凌嵌入式將繼續(xù)致力于技術創(chuàng)新和產(chǎn)品研發(fā),為千行百業(yè)提供更多高質量的解決方案。
    的頭像 發(fā)表于 11-08 11:25 ?857次閱讀
    飛凌嵌入式FET527N-C核心板現(xiàn)已<b class='flag-5'>適配</b><b class='flag-5'>Android</b> <b class='flag-5'>13</b>

    淺談Xpedition 2409版本的新功能

    在《創(chuàng)新不止|Xpedition 2409版本新功能揭秘(上)》一文中,我們了解了Xpedition 2409版本的部分改進部分。今天,我們繼續(xù)看Xpedition 2409新版本給我們帶來了什么樣的全新用戶體驗。
    的頭像 發(fā)表于 10-31 15:33 ?3151次閱讀

    首批Apple Intelligence功能驚艷亮相,12月新功能值得期待

     蘋果正式推出了備受矚目的Apple Intelligence,為iPhone、iPad和Mac用戶帶來了一系列創(chuàng)新功能,且這些功能均通過免費軟件更新即可獲得。只要用戶的設備和Siri語言設置為美國英文,便可在全球多數(shù)地區(qū)享受這
    的頭像 發(fā)表于 10-29 14:11 ?769次閱讀

    Zigbee 3.0的新功能

    電子發(fā)燒友網(wǎng)站提供《Zigbee 3.0的新功能.pdf》資料免費下載
    發(fā)表于 09-26 10:45 ?3次下載
    Zigbee 3.0的<b class='flag-5'>新功能</b>

    谷歌Android 15 Beta 3的新功能

    從近期發(fā)布的 Beta 3 開始,Android 15 達成了平臺穩(wěn)定性里程碑版本,這意味著開發(fā)者 API 和所有面向應用的行為都已是最終版本,您可以查閱它們并將其集成到您的應用中,并且針對
    的頭像 發(fā)表于 09-09 15:55 ?851次閱讀