首页 > 解决方案 > 无法生成签名包 - Android 资源链接失败,错误:-c 选项的配置“自动”无效

问题描述

将 Android Studio 更新到 v 3.2 后,第一次尝试生成签名包时出现错误:

    Android resource linking failed
    Output:  error: invalid config 'auto' for -c option.

    Command: /home/yuliia/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-4818971-linux.jar/3c2f2255ccccab2125c4cc0eaccd5fdd/aapt2-3.2.0-4818971-linux/aapt2 link --proto-format\
            -I\
            /home/yuliia/Android/Sdk/platforms/android-27/android.jar\
            --manifest\
            /home/yuliia/Documents/projects/android_projects/OCRme/app/build/intermediates/merged_manifests/release/processReleaseManifest/merged/AndroidManifest.xml\
            -o\
            /home/yuliia/Documents/projects/android_projects/OCRme/app/build/intermediates/linked_res_for_bundle/release/bundleReleaseResources/bundled-res.ap_\
            -R\
            /home/yuliia/Documents/projects/android_projects/OCRme/app/build/intermediates/res/merged/release/color_abc_tint_seek_thumb.xml.flat\
            -R\
            /home/yuliia/Documents/projects/android_projects/OCRme/app/build/intermediates/res/merged/release/drawable-xhdpi-v4_abc_popup_background_mtrl_mult.9.png.flat\
            -R\
            /home/yuliia/Documents/projects/android_projects/OCRme/app/build/intermediates/res/merged/release/drawable-xxhdpi-v4_abc_btn_check_to_on_mtrl_015.png.flat\
            -R\
    ....
     /home/yuliia/Documents/projects/android_projects/OCRme/app/build/intermediates/res/merged/release/layout_activity_get_more_requests.xml.flat\
            --auto-add-overlay\
        -0\
        apk\
        -c\
        auto\
        --no-version-vectors
Daemon:  AAPT2 aapt2-3.2.0-4818971-linux Daemon #0

我怎样才能让它工作?

标签: androidandroid-studio

解决方案


您必须使用 resConfig 的“自动”选项。'auto' 已从标准构建中弃用,并且在捆绑包中不受支持(在弹出错误后警告可能在日志中丢失):

android {
    defaultConfig {
        ...
        resConfigs "auto"
    }
}

捆绑包中仍然支持非“自动” resConfigs,因此只需指定您想要保留的语言,如文档中所述:

android {
    defaultConfig {
        ...
        resConfigs "en", "fr"
    }
}

推荐阅读