mPaaS 旧版基线对 targetSdkVersion 最高仅支持到 26。从 10.1.68.21 开始,mPaaS 增加了对 targetSdkVersion 29 的支持。如果您的应用需要将 targetSdkVersion 升级到 29,请使用 mPaaS 插件 将 SDK 更新到 10.1.68.21 或以上版本,并按照下文进行适配和回归相关功能。
适配 targetSdkVersion 29
前置条件
请先参考 mPaaS 适配 targetSdkVersion 28 完成 targetSdkVersion 28 的相关适配。
修改 targetSdkVersion
AAR 接入方式
在工程主 module 下的 build.gradle
文件中修改属性 targetSdkVersion 29。
Portal&Bundle 接入方式
在 Portal 工程主 module 下的
build.gradle
文件中修改属性 targetSdkVersion 29。在 Bundle 工程中的 targetSdkVersion 可不修改,但不得高于 Portal 工程。
通用配置
修改工程 AndroidManifest.xml
,在 application 节点下添加以下属性:
<application
android:requestLegacyExternalStorage="true"
... >
后台使用定位功能
如果您的应用需要在后台时使用定位功能,需添加、申请以下权限:
在
AndroidManifest.xml
中添加权限:<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
调用定位 API 前确保申请了该权限:
String[] permissions; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.Q) { permissions = new String[]{ Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_BACKGROUND_LOCATION }; } else { permissions = new String[]{ Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION }; } ActivityCompat.requestPermissions(this, permissions, 101);
使用小程序蓝牙功能
如果您的应用需要在小程序中使用蓝牙相关 API,需添加、申请以下权限。
在
AndroidManifest.xml
中添加权限:<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
调用蓝牙 API 前确保申请了该权限:
String[] permissions = new String[]{ Manifest.permission.ACCESS_FINE_LOCATION, }; ActivityCompat.requestPermissions(this, permissions, 101);
回归测试
全量回归测试的设备中必须包含 Android 10.0 或以上版本的设备。
回归测试中您需要重点关注以下组件功能(如果使用):
组件 | 验证项目 |
统一存储 | 数据库加密存储 是否正常。 |
热修复 | 热修复 是否能够生效。 |
移动分析 | 移动分析 卡顿监控是否正常。 |
小程序 | |
定位 | 定位 是否正常。 |