云磁分发

更新于 2026-11-07

APK 加固做了什么、能防住什么

加固会把 APK 里的 Java / Kotlin 代码(dex)全部加密,App 启动时才在内存里解开,所以别人用 jadx 这类工具直接打开安装包,看不到你的业务代码。它能明显提高破解成本,但不能保证代码绝对安全。

加固时具体做了哪些事?

步骤做法作用
加密代码全部 classes*.dex 用 AES-256-GCM 加密,放进 assets/encrypted/,原 dex 从包里移除静态反编译只能看到壳,看不到业务代码
换入口包里只留一个很小的壳 dex,清单的 appComponentFactory 指向它壳在任何业务代码之前运行
内存解密启动时解密,用系统的 InMemoryDexClassLoader 直接从内存加载,不写磁盘手机存储里找不到解密后的 dex 文件
绑定证书解密密钥用「签名证书 SHA-256 + 每次随机的盐」通过 HKDF 算出被别人重新签名后算出的密钥不对,App 起不来
运行时自检启动时检查调试器(TracerPid)、Frida / Xposed / LSPosed 痕迹、签名证书发现后主动退出
关闭备份android:allowBackup 改成 false防止用 adb 备份导出应用数据
重新签名用你上传的 keystore 重签 v1 + v2 + v3,并核对证书指纹证书不变,已上架的应用可以正常更新

除了换入口和关备份,清单里的其他内容、你的组件和资源都不会改动。

能防住什么?

防不住什么?

目前没有做虚拟机保护(VMP)、so 加固和字符串加密。这是基础的 dex 加密壳,如果你的产品涉及金融支付等高风险场景,建议使用专业的商业加固。

加固后对 App 有什么影响?

一定要先测试再提审。下载成品包,把登录、支付、推送、第三方 SDK 这些核心流程都走一遍,最好覆盖 Android 10 和最新系统各一台手机。我们无法替你验证每个 App 的所有功能。

什么样的包能加固?

要求原因
minSdk ≥ 29(Android 10)壳依赖的系统能力从 Android 10 开始才完整,更低的系统上 App 打不开
release 包debug 包会触发调试检测,自己退出
没有被其他工具加固过两层壳基本起不来;上传前系统会自动检查常见加固
没有自定义 appComponentFactory壳要占用这个入口;androidx 自带的那个没有问题
APK 文件,不超过 500 MBAAB 需要先转成 APK

Google Play 的包不要加固,容易违反 Play 政策,也和 Play 应用签名冲突。不符合要求的包仍然可以只做分发。

商店审核会受影响吗?

可能会。加固不改变应用功能,但部分商店的安全扫描可能对不认识的加固方式给出提示或要求说明,这种情况需要你按商店的要求处理。我们不保证审核通过,也不提供任何绕过审核或安全检测的能力。

我的 APK 和证书安全吗?

使用规则

只能处理你有权发布的应用。禁止用本服务隐藏恶意代码、处理他人的应用或规避安全检测,发现后会停用账号并保留记录。

开始使用看价格