全部产品

mPaaS 支持多 CPU 架构

更新时间:2020-09-21 20:43:05

背景

在 mPaaS 标准基线中,SDK 使用的动态库(.so 文件)仅支持 armeabi 架构。但部分用户还有对其他 CPU 架构支持的需求,例如使用 armeabi-v7a 架构,或应用上架 Google Play 需支持 arm64-v8a 架构等,所以 mPaaS 在定制基线 10.1.68a 上对此进行了支持。如果您的应用需要支持 armeabi 以外的其他架构,请按照下文更新 SDK 并回归相关功能。

说明:10.1.68a 基线虽已通过测试,但目前仍处在 beta 阶段,请谨慎使用。

更新 SDK 及相关配置

更新 SDK

  • 请使用 mPaaS 插件 来更新 mPaaS SDK。
  • 使用 升级基线 功能,勾选 自定义基线,填入基线号 cp_change_22487
  • 使用 更新组件 功能,升级到最新版,并选择需要的组件安装。

整体兼容性

  • 支持 aar、inside、portal&bundle(组件化)接入方式
  • 支持 armeabi, armeabi-v7a, arm64-v8a 架构
  • 支持 targetSdkVersion 26 - 28
  • 支持 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

inside/portal&bundle

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

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

更新 agp 版本:

  • 对于 inside,在工程根目录 build.gradle 中修改。
  • 对于 portal&bundle,在 portal 工程和所有 bundle 工程根目录 build.gradle 中修改。
  1. classpath 'com.alipay.android:android-gradle-plugin:3.5.9'
  2. classpath 'com.android.tools.build:gradle:3.5.0' // 最低 3.5.0

生成 APK

设置 CPU 架构

  • 对于 aar/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. }

编译

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

回归测试