Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如果我们从build.gradle文件中删除重新配置,会发生什么?_Android_Build.gradle - Fatal编程技术网

Android 如果我们从build.gradle文件中删除重新配置,会发生什么?

Android 如果我们从build.gradle文件中删除重新配置,会发生什么?,android,build.gradle,Android,Build.gradle,我的build.gradle文件如下所示: compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "com.abc" minSdkVersion 14 targetSdkVersion 22 versionCode 16 versionName "0.1.1" multiDe

我的build.gradle文件如下所示:

    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.abc"
        minSdkVersion 14
        targetSdkVersion 22
        versionCode 16
        versionName "0.1.1"
        multiDexEnabled true
        resConfigs "hdpi", "xhdpi", "xxhdpi", "xxxhdpi"
    }
当我尝试生成代码时,它给出了以下错误:

Execution failed for task ':app:processDebugResources'.
> Cannot filter assets for multiple densities using SDK build tools 21 or later. 
 Consider using apk splits instead.
当我从defaultConfig中删除重新配置时,上述错误将被删除,代码将成功生成并生成apk

此apk是否会像以前一样在所有设备上运行? 还是我做错了什么

如果有其他解决方案,请告诉我。我只想维护单个apk


提前感谢。

实际上,从build.gradle文件中删除重新配置行将创建一个APK文件,该文件与以前一样在相同的设备上运行。它可能会更大一点,因为包含了更多的资源。如果要将APK收缩到与以前类似的级别,可以在“defaultConfigs”部分之后添加“splits”部分:


这将包括与您以前使用的密度相同的资源,而不包括其他密度。

删除它不会发生任何事情。。没用,谢谢@萨加尔:究竟是什么导致了上述错误。在我的旧系统上,我没有看到这个错误。如果你想在任何平台上维护你的单个apk,请将编译和目标sdk版本更改为23并使用运行时权限,因为在marshmellow中它不起作用
splits {
    density {
        enable true
        reset()
        include "hdpi", "xhdpi", "xxhdpi", "xxxhdpi"
    }
}