来了,Android 13 适配指南

作者:恋猫de小郭

「是的,你没看错,现在就要带你适配 Android13」

2022 的Google I/O 发布了 Android 13 beta 2 和 Android 13 Beta 1 国内厂商的设备支持列表,虽然按照惯例, Android 13 应该是年末才发布正式版,但是相信有的开发者已经收到了平台的 Android13 的适配要求,所以本篇也是结合 Oppo 的 Android 13 应用兼容性适配指导 和官方提供的一些文档内容做一个整理测试。

目前 Android 13 主要的兼容问题还是在于隐私权限上,所以本次的适配指南相关内容也是着重在这一部分, 「这里涉及面比较广的应该就是相册和通知权限」

相册权限

这个动图大家可能看到过,「这是 Android 13 上提供的系统图片选择器,通过 Intent(MediaStore.ACTION_PICK_IMAGES); 就可以打开,支持视频、音频、图片分类,支持多选和单选」 ,另外官方也表示过,这个特性不仅仅会在 Android 13 中出现,谷歌还会将其放置到 Play 商店中,向 Android 11 和 Android 12 设备推送。

我们通过调整 TargetSDK 设置为 PreView,然后运行到 Tiramisu 的模拟器上进行测试,主要测试 TargetSDK 在低于 “Tiramisu” 和等于 “Tiramisu” 时的不同情况。

如下图所示:

  • 图 1 是 「TargetSDK 低于 13 时运行在 Andorid 13 模拟器上的情况,此时可以正常访问到本地图库相关信息」
  • 图 2 是使用了 “Tiramisu” 下,「通过官方提供的 Intent(MediaStore.ACTION_PICK_IMAGES); 打开的系统相册选择组件」,也没问题
  • 图 3 和 图 4 是使用了 “Tiramisu”,使用以前代码运行后的相册读取情况,没做处理,可以看到此时读取不到相关信息;
  • 图 5 是 「通过申请新的android.permission.READ_MEDIA_IMAGES 权限,就可以用以前的代码继续访问到以前的相册信息」,因为对于目标版本为 Android 13 的情况,现在 READ_EXTERNAL_STORAGE权限被细化了,开发者需要使用READ_MEDIA_IMAGE、READ_MEDIA_VIDEO、READ_MEDIA_AUDIO 来替代适配;
  • 图 6 在申请完权限之后,就可以正常读取相册等信息;

总结: 「所以如果是 TargetSDK 在 Android 13 以下,不需要处理,如果在 Android 13 以及以上 ,需要增加申请权限」

    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
    <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
    <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值