1

我需要制作数百种我的应用程序。他们有不同的标志和名称。当我使用android studio的productFlavor时,它总是OOM,并且构建数百个应用程序需要很长时间。所以我想通过apktool制作这些应用程序。decompile, rebuild, zipalign, apksign. 但是我发现,最终生成的apk无法安装。错误是:

Failure [INSTALL_FAILED_INVALID_APK: ed to extract native libraries, res=-2]
apktool d my_app.apk decompile

更改徽标和名称。

apktool b decompile my_app-rebuild.apk
zipalign -v 4 my_app-rebuild.apk my_app-align.apk
apksigner sign --ks my_key.jks --ks-pass pass:my_ks_pass --key-pass pass:my_key_pass --v1-signing-enabled true --v2-signing-enabled true --out my_app_out.apk my_app-align.apk

完成这些工作后,无法安装 my_app_out.apk。

4

1 回答 1

2

从你得到的错误中:

Failure [INSTALL_FAILED_INVALID_APK: ed to extract native libraries, res=-2]

如果设置为false,那么您的本机库必须是页面对齐的并且未压缩地存储在 APK 中。

在进行zipaligning时,您需要设置extractNativeLibs标志,或者需要通过添加参数对 apk 进行页面对齐:true-p

-p : outfile.zip应该对 infile.zip 中的所有共享对象文件使用相同的页面对齐方式

zipalign 命令应该是:

zipalign -p -v 4 my_app-rebuild.apk my_app-align.apk
于 2021-02-20T18:20:06.243 回答