步骤 4 mPaaS 接入不带无线保镖的 RPC(可选)
Google 自 minSdk 23 起将 V1 签名弃用,而 mPaaS 的无线保镖使用的前提条件是以 V1 签名作为支撑。项目需求满足如下条件时,可以使用 mPaaS 接入不带无线保镖的 RPC。
App 对客户端没有加密需求,可将密钥明文暴露在代码或 AndroidManifest.xml 中。
移除无线保镖后 mPaaS SDK 不再对端上链路验签做任何安全承诺。
mPaaS 基线版本在 10.2.3.3 及以上。
移除无线保镖后,若使用 MDC 则需增加
MPMDC.setSignType(1);
或MPMDC.setSignType(2);
。移除无线保镖后,不支持 RPC sha256 方式验签。
相关功能影响
统一存储:
文件存储模块暂不可使用 ZSecurity 相关的 API,如果使用 ZSecurity 相关的 API 会导致 crash。
db 字段保护功能暂时无法使用,SQLite db 文件整体依然可加密。
MDC:需增加
MPMDC.setSignType(1);
或MPMDC.setSignType(2);
方法。RPC:暂不支持 sha256 验签。
接入指南
设置 appsecret
设置 appsecret 有如下两种方式,可任选其一:
方式一:清单文件 manifest 中配置 mpaas_appsec (推荐使用)
在 manifest 文件中的 application 节点下设置如下配置,其中 android:value
值为控制台中的 appsecret 值。
<meta-data
android:name="mpaas_appsec"
android:value="4618134xxxxxxxxxxxxxxxxxxx"/>
方式二:mPaaS 初始化之后设置 appsecret
通过如下代码设置 appsecret,其中 appsecret
参数的值为控制台中的 appsecret 值。
MPRpc.setGlobalAppSecret(String appsecret);

移除无线保镖 securityguard-build 依赖库
通过
./gradlew :app:dependencies
命令行查找项目依赖树。说明app 是项目的模块名,须根据自身项目的模块名查找,可在工程的
setting.gradle
中查看。移除 securityguard-build 依赖库。
在 module 的
build.gradle
中通过gradle exclude
移除 securityguard-build 依赖库。configurations.all { exclude group: 'com.alipay.android.phone.thirdparty', module: 'securityguard-build' }