AAB 即 Android App Bundle,是 Google 官方发布的一种新的 App 包格式,可以有效缩减 App 大小,提升用户安装和更新 App 的体验。从 8 月开始,在 Google Play 上架的 App 需要强制提交 AAB 格式,这对安卓 App 开发者以及 App 保护都有重大影响。
AAB 包格式
AAB 包本质上和 APK 区别不大,仍然是标准的压缩文件格式,可以用解压工具直接打开。
AAB 包并不是安卓系统直接识别的包格式,不能直接在安卓系统上直接安装执行,仅适用于在 Google Play 上架,在安装时会转化为 Multi-APK (安卓 4.4 及以下)或者 Split APKs (Android 5.0 及以上)格式。
AAB 的保护
AAB 包结构与 APK 相比,外层结构发生了一些变化,但其核心内容如 DEX 文件、资源文件、Native 库没有发生变化,配置文件像 AndroidManifest.xml 等则从 Android binary XML 变成了 Protobuf 格式。
对 AAB 的保护,核心功能没有太大变化,但由于 Google Play 的审核要求,有一些选项会存在一定程度的兼容性问题。
代码相似度问题
Google 要求上架的应用不能与其它已上架应用有相同的体验,马甲包等重复应用上架会被拒绝,提示“账户关联”等错误。
Google 为判定重复应用,对应用的内容(代码、图标、资源等)做了一系列审核,由于 App 保护的一些功能会隐藏 DEX 中的代码(如 DEX 加密),只暴露出壳代码,这个壳代码所有 App 保护后几乎一致,一但上架多个被保护的 App,很容易被 Google 判定为重复应用。
签名问题
Google Play 的上架设置中,在 Setup --- App integrity 中,可以设置签名方式。
如果设置了由 Google 管理和保护签名密钥(即上图推荐选项),最终的 App 是由 Google 签名的,这与上架时的签名是不同的,因此“签名校验”功能也会受影响。
Virbox Protector 的保护方案
Virbox Protector 针对 AAB 包格式做了适配,已经完美支持普通 AAB 和 Unity AAB 包格式,并对 Google 上架的设置和保护选项做了指导说明,帮助安卓 App 开发者顺利通过审核。
产品优势
兼容性好
通过灵活调整 App 保护选项,兼容 Google Play 上架。
自动化保护
调整保护选项后生成配置文件,通过命令行自动完成保护。
可离线部署
保护工具可以离线使用,无需上传 App。
配置灵活
配置灵活,自由选择要保护的方法,平衡安全性与性能。
安全性高
DEX 虚拟化、SO库保护、Unity 引擎保护等多种保护方案结合,安全性高。
申请试用
https://shell.virbox.com/apply.html