mPaaS 适配 targetSdkVersion 33

从 mPaaS 10.2.3.35 起,mPaaS 增加了对 targetSdkVersion 33 的支持。如果您的应用需要将 targetSdkVersion 升级到 33,请使用 使用 mPaaS 插件 将 SDK 更新到 10.2.3.35 或以上版本,并按照下文进行适配和回归相关功能。

适配 targetSdkVersion 33

前置条件

请先参考以下文档,确保您的应用已经完成了 targetSdkVersion 旧版本的适配:

修改 targetSdkVersion

AAR 接入方式

在工程主 module 下的 build.gradle 文件中修改属性 targetSdkVersion 33。

Portal&Bundle 接入方式

在 Portal 工程主 module 下的 build.gradle 文件中修改属性 targetSdkVersion 33。

在 Bundle 工程中的 targetSdkVersion 可不修改,但不得高于 Portal 工程。

通知的运行时权限

Android 13 新增了权限 POST_NOTIFICATIONS,对于:

  • targetSdkVersion < 33 的应用,系统将会在应用创建首个通知渠道时自动弹窗申请该权限;

  • targetSdkVersion ≥ 33 的应用,应用可自主申请该权限;

更多内容请参考 通知运行时权限

消息推送

如果您接入了消息推送,需要通过自建通道推送消息并在通知栏展示,您需要在 AndroidManifest.xml 中添加该权限:

<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>

并在合适的时机动态申请该权限,如未申请或用户拒绝该权限,无论您是否 自定义处理消息,自建通道收到的消息都无法发送通知到通知栏展示。

细化的媒体权限

Android 13 开始,READ_EXTERNAL_STORAGE 权限不再生效,该权限被拆分为了以下三个权限:

  • READ_MEDIA_IMAGES

  • READ_MEDIA_VIDEO

  • READ_MEDIA_AUDIO

对于 targetSdkVersion ≥ 33 的应用:

  • 动态申请 READ_EXTERNAL_STORAGE 权限,将不会有弹窗;

  • 新安装的应用使用 checkSelfPermission 检查 READ_EXTERNAL_STORAGE 权限永远返回 false;

  • 如果之前 targetSdkVersion < 33 的应用已被授予 READ_EXTERNAL_STORAGE 权限,通过覆盖安装升级到 targetSdkVersion ≥ 33 的应用后,将自动被授予以上三个权限;

您需要根据自身业务需求,在 AndroidManifest.xml 中添加以下权限中的一个或几个:

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

并将代码中动态申请或检查 READ_EXTERNAL_STORAGE 权限的逻辑修改为以上三个权限中的一个或几个。

小程序 - 多媒体

如果您接入了小程序,并且需要使用小程序 - 多媒体 API ,您需要在 AndroidManifest.xml 中添加该权限:

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

并在合适的时机动态申请该权限,如未申请或用户拒绝该权限,小程序 - 多媒体 API 将无法获取系统相册中的图片。

扫一扫

如果您接入了扫一扫或扫一扫 AI ,并且:

  • 使用窗口扫码功能,您需要申请下述权限;

  • 使用全屏扫码功能,同时接入了多媒体或小程序 - 多媒体,您需要申请下述权限;

  • 使用全屏扫码功能,同时未接入多媒体或小程序 - 多媒体,您不需要申请下述权限;

  • 使用自定义扫码功能,同时使用了多媒体组件来获取相册图片,您需要申请下述权限;

  • 使用自定义扫码功能,同时直接调用系统相册,不需要申请下述权限;

您需要在 AndroidManifest.xml 中添加该权限:

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

并在合适的时机动态申请该权限,如未申请或用户拒绝该权限,当您点击相册按钮时,mPaaS 多媒体组件将无法获取系统相册中的图片。

回归测试

全量回归测试的设备中必须包含 Android 13 或以上版本的设备。

回归测试中您需要重点关注以下组件功能(如果使用):

组件

验证项目

消息推送

  • 自建通道收到消息后是否能展示通知

  • 厂商通道推送消息是否正常

H5 容器

  • 选择文件、图片、视频是否正常

  • 页面打开时切换网络,页面是否正常

小程序

  • 多媒体 API 是否正常

扫一扫

  • 相册选择图片是否正常

分享

  • 分享到各平台是否正常

威胁感知

  • 获取基础信息各字段是否正常