mPaaS 支持多 CPU 架构

在 mPaaS 旧版基线中,SDK 使用的动态库(.so 文件)仅支持 armeabi 架构。但部分用户还有对其他 CPU 架构支持的需求,例如使用 armeabi-v7a 架构,或应用上架 Google Play 需支持 arm64-v8a 架构等。

mPaaS 从 10.1.68.21 开始,增加了对 armeabi-v7a、arm64-v8a 架构的支持。如果您的应用需要支持 armeabi 以外的其他架构,请使用 mPaaS 插件 将 SDK 更新到 10.1.68.21 或以上版本 ,并按照下文更新配置和回归相关功能。

如果您的应用不需要支持 armeabi 以外的其他架构,您仍然可以正常更新 SDK 到 10.1.68.21 或以上版本,并且不需要进行其他修改。

更新配置

整体兼容性

  • 支持原生 AAR、mPaaS Inside、Portal&Bundle 接入方式
  • 支持 armeabi、armeabi-v7a、arm64-v8a 架构
  • 支持 targetSdkVersion 26 - 29
  • 支持 Android 11 系统

在 Google Play 发布

如果您的应用需要在 Google Play 上发布,同时也需要使用 mPaaS 的定位组件或小程序中的地图功能,您需要移除 mPaaS 内置的高德 SDK,并改用高德官方提供的能够通过 Google 审核的版本。参照下文修改:

更新 Gradle 配置

原生 AAR

更新 Gradle 版本,推荐版本为 6.2,最低支持版本 5.0。如最新版本编译失败请使用推荐版本 6.2。

  1. distributionUrl=https\://services.gradle.org/distributions/gradle-6.2-all.zip

mPaaS Inside/Portal&Bundle

更新 Gradle 版本,推荐版本为 6.2,最低支持版本 5.0。如最新版本编译失败请使用推荐版本 6.2。

  1. distributionUrl=https\://services.gradle.org/distributions/gradle-6.2-all.zip

更新 agp 版本:

  • 对于 mPaaS Inside,在工程根目录 build.gradle 中修改。
  • 对于 Portal&Bundle,在 Portal 工程和所有 Bundle 工程根目录 build.gradle 中修改。
  1. classpath 'com.alipay.android:android-gradle-plugin:3.5.14'
  2. classpath 'com.android.tools.build:gradle:3.5.3' // 最低 3.5.0

生成 APK

设置 CPU 架构

  • 对于原生 AAR/mPaaS Inside,在工程主 module 的 build.gradle 中设置。
  • 对于 Portal&Bundle,若生成 APK 就在 Portal 工程主 module 的 build.gradle 中设置;若生成 Bundle 就在 Bundle 工程主 module build.gradle 中设置。

按照原生方式设置 abiFilters 即可:

  1. ndk {
  2. abiFilters "armeabi", "armeabi-v7a", "arm64-v8a"
  3. }

编译

无特殊配置,正常编译即可。

回归测试

您需要分别对不同架构的 APK 做全量回归测试。回归测试中您需要重点关注以下组件功能(如果使用):

组件 验证项目
移动网关
热修复
UC 内核
扫一扫
  • 标准 UI 扫码是否成功。
  • 标准 UI 打开手机相册、拍照及预览是否正常。
  • 自定义 UI 扫码是否成功,如自定义 UI,需要 适配部分新接口
统一存储
分享
OCR
  • OCR 识别相关内容是否正常。
音视频