gpt4 book ai didi

android - 在 Android 中添加 "splits"后出现错误 : Could not find EOCD,

转载 作者:行者123 更新时间:2023-12-03 13:26:44 27 4
gpt4 key购买 nike

我在我的 gradle 中使用以下拆分代码来减少 APK 大小:

splits {
abi {
// Enable ABI split

enable true

// Clear list of ABIs
reset()

// Specify each architecture currently supported by the Video SDK
include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"

// Specify that we do not want an additional universal SDK
universalApk false
}
}
当我运行该应用程序时,APK 生成良好,尺寸减小并在模拟器上运行。
但是当我尝试从 Build > Build bundles/apks 构建 APK 文件时
enter image description here
我收到此错误:
Execution failed for task ':app:packageAbcDebug'.
> A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable
> Could not find EOCD in '....apk'

Possible solution:
- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
我只想排除“x86”架构,以减小 APK 大小并需要将 APK 发送给我的客户端。我该如何解决?

最佳答案

尽管我没有启用拆分,但我在构建过程中遇到了类似的问题。随心所欲地接受它。
在挖掘了 PackageAndroidArtifact 的源代码包和 Android 中的其他源之后,我发现“EOCD”的意思是“中央目录的结尾”。也就是说,它与构建输出时构建的 zip 文件的结束标记有关。 (The link to the comments in Android's source kit.)
在我自己的情况下,我发现即使我要求 Android Studio 完全清理我的构建目录,它也会留下 app-debug.apk 构建工件文件。 (出于某些原因,我试图打包我们的 APK 的调试版本以进行内部测试。)不知何故,该文件已损坏,这完全混淆了构建过程。
解决方案是在运行构建过程之前手动删除 apk 文件。 (在我的例子中,它位于我构建的 app/debug 目录中,在 app/build 目录旁边。)
哥图...

关于android - 在 Android 中添加 "splits"后出现错误 : Could not find EOCD,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64713716/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com