bytedance/AabResGuard

AGP 7.2.2 生成的aab包用bundletool转apks失败,希望大佬能适配下

Jiang00 opened this issue · 8 comments

classpath "com.bytedance.android:aabresguard-plugin:0.1.10"
Gradle Version 7.4.2
Gradle Plugin Version 7.2.2

报错如下

/var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/9326926774270237465/proto.apk: error: failed to deserialize resources.pb: unknown type 'macro'.
/var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/9326926774270237465/proto.apk: error: failed to load APK.
[BT:1.3.0] Error: Command '[/var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/AutoValue_BuildApksCommand2510183443234070461/output/macos/aapt2, convert, --output-format, binary, -o, /var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/9326926774270237465/binary.apk, /var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/9326926774270237465/proto.apk]' didn't terminate successfully (exit code: 1). Check the logs.
com.android.tools.build.bundletool.model.exceptions.CommandExecutionException: Command '[/var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/AutoValue_BuildApksCommand2510183443234070461/output/macos/aapt2, convert, --output-format, binary, -o, /var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/9326926774270237465/binary.apk, /var/folders/lm/ymj2vhj91_79yntpgg98h8r40000gn/T/9326926774270237465/proto.apk]' didn't terminate successfully (exit code: 1). Check the logs.
at com.android.tools.build.bundletool.model.exceptions.InternalExceptionBuilder.build(InternalExceptionBuilder.java:57)
at com.android.tools.build.bundletool.model.DefaultCommandExecutor.executeImpl(DefaultCommandExecutor.java:57)
at com.android.tools.build.bundletool.model.DefaultCommandExecutor.execute(DefaultCommandExecutor.java:33)
at com.android.tools.build.bundletool.model.Aapt2Command$1.convertApkProtoToBinary(Aapt2Command.java:41)
at com.android.tools.build.bundletool.io.ApkzlibApkSerializerHelper.writeToZipFile(ApkzlibApkSerializerHelper.java:122)
at com.android.tools.build.bundletool.io.ApkzlibApkSerializerHelper.writeToZipFile(ApkzlibApkSerializerHelper.java:101)
at com.android.tools.build.bundletool.io.SplitApkSerializer.writeToDisk(SplitApkSerializer.java:68)
at com.android.tools.build.bundletool.io.SplitApkSerializer.writeSplitToDisk(SplitApkSerializer.java:42)
at com.android.tools.build.bundletool.io.ApkSetBuilderFactory$ApkSetArchiveBuilder.addSplitApk(ApkSetBuilderFactory.java:106)
at com.android.tools.build.bundletool.io.ApkSerializerManager$ApkSerializer.serialize(ApkSerializerManager.java:444)
at com.android.tools.build.bundletool.io.ApkSerializerManager.lambda$null$3(ApkSerializerManager.java:221)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:117)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:38)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:77)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
at java.base/java.lang.Thread.run(Thread.java:832)

i这个是依赖的库版本导致的。

@NeptuneCoder 确实是依赖库有冲突,我把material库版本降到1.5.0就可以了。目前只能这样,还是希望大佬能抽空适配下高版本

+1 大佬有空适配下吧

是BundleTool以及aapt2版本太低导致的,修改代码升级bundletool版本即可

是BundleTool以及aapt2版本太低导致的,修改代码升级bundletool版本即可

大佬有修改的版本吗?我也想升级和修改来着,clone下来发现一些依赖都没法成功下来😂,一堆报红

是BundleTool以及aapt2版本太低导致的,修改代码升级bundletool版本即可

大佬有修改的版本吗?我也想升级和修改来着,clone下来发现一些依赖都没法成功下来😂,一堆报红

@fanqGithub 我改了一个