flutter apk加固之后的apk签名-压缩-对齐

如题,flutter上线前,必须要对apk(android的)包进行加固,我记得以前360加固直接可以关联签名文件自动加固自动打包的,后来,后来发现360加固用不了啊,我用了tx的云加固,但是加固之后呢,他没有给我们自动关联签名文件签名啊。尴尬。。。

我就想啊,算了吧,自己动手加固,压缩,对齐。总是要搞的。就搞一下咯。注意,我这个是mac电脑。分3点说下(步骤、验证、命令的问题)

一、步骤:

1.云加固(https://console.cloud.tencent.com/ms),拿到加固之后的apk。例如;

2.找个干净的目录,千万注意路径中间不能有空格(你就搞个英文的路径,别整些乱七八糟的又给自己添麻烦)

参考命令:jarsigner -verbose -keystore [您的私钥存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]

自己输入命令(我的目录是/Users/mac/FlutterXXX/02sign,下面蓝色的部分是各种路径):

jarsigner -verbose -keystore /Users/mac/StudioProjects/flutterProject/grammar_checker/key/aigrammar.keystore -signedjar /Users/mac/FlutterXXX/02sign/signed_gc.apk /Users/mac/FlutterXXX/02sign/grammarchecher_v0.8.0_7_202002070

以下是对 `flutter build apk --release --obfuscate --verbose --split-debug-info=./build_info --split-per-abi` 指令各部分含义和作用的分析: #### `flutter build apk` 该指令用于构建 Android APK 文件,是 Flutter 中专门针对 Android 平台的打包命令。 #### `--release` 此参数表示构建一个发布版本的 APK。发布版本会进行一系列优化,如代码压缩、资源优化等,以减小 APK 包的体积并提高应用的性能和安全性,适用于将应用发布到应用商店供用户下载使用[^2]。 #### `--obfuscate` 开启 Dart 代码混淆功能。代码混淆会对 Dart 代码进行处理,将代码中的类名、方法名、变量名等替换为无意义的短名称,使得代码难以被逆向工程分析,提高代码的安全性,同时也能在一定程度上减小 APK 的体积[^2]。 #### `--verbose` 启用详细输出模式。在打包过程中,会输出更多详细的构建信息,包括各个步骤的执行情况、依赖项的下载和处理等。这有助于开发者在打包出现问题时进行调试和排查错误。 #### `--split-debug-info=./build_info` 结合 `--obfuscate` 使用,该参数指定将 Dart 代码混淆后的符号表导出到指定的目录(这里是 `./build_info`)。符号表在应用出现崩溃时非常有用,通过符号表可以将混淆后的堆栈跟踪信息还原为原始的代码位置,方便开发者进行错误定位和调试[^2]。 #### `--split-per-abi` 启用根据 ABI(Application Binary Interface,应用二进制接口)拆分 APK 功能。默认情况下,Flutter 会构建一个包含所有支持的 ABI(如 `android-arm`、`android-arm64`、`android-x86`、`android-x64` 等)的通用 APK。使用该参数后,会为每个支持的 ABI 分别构建一个 APK 包,这样可以减小每个 APK 的体积,用户在下载应用时,应用商店会根据用户设备的 ABI 选择合适的 APK 进行下载,从而减少不必要的资源下载[^2]。 ### 示例代码 以下是一个简单的 Flutter 项目中使用该打包指令的示例(假设在项目根目录下执行): ```bash flutter build apk --release --obfuscate --verbose --split-debug-info=./build_info --split-per-abi ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值