【问题标题】:File 'root/lib/META-INF/MANIFEST.MF' uses reserved file or directory name 'lib'文件 'root/lib/META-INF/MANIFEST.MF' 使用保留文件或目录名称 'lib'
【发布时间】:2019-11-18 04:57:22
【问题描述】:

我尝试申请 app bundle 但失败了。
我可以使用 spilit 选项构建 apk,但我无法构建 aab

我放了以下 gradle 选项。

    bundle {
        abi {
            enableSplit = true
        }
    }

控制台中的错误信息如下。

    File 'root/lib/META-INF/MANIFEST.MF' uses reserved file or directory name 'lib'.

构建的文件结构如下。

我听说我必须添加以下库,但我没有。
其实加不加play核心库其实没什么区别。

    implementation "com.google.android.play:core:$play_version"

我想更改一些选项以避免别名问题,但我对此一无所知。

谁能简单的解决这个问题?

【问题讨论】:

    标签: android gradle android-app-bundle


    【解决方案1】:

    确保您的项目中没有名为“lib/”的目录,因为此目录名称在 APK 格式中保留用于存储原生库。

    如果您的项目中没有,则您的库依赖项必须具有它并且正在复制到 APK 中。

    它适用于 APK 而不适用于 AAB 的原因是 AAB 格式更严格,会阻止您在应用中嵌入不必要的文件。

    【讨论】:

    • 感谢您的回复。问题是另一个任务是使用/lib 复制本机so文件。
    猜你喜欢
    • 1970-01-01
    • 2022-10-06
    • 1970-01-01
    • 2015-01-26
    • 2021-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-29
    相关资源
    最近更新 更多