Estoy usando android studio 0.9.3 con gradle 'com.android.tools.build:gradle:0.14.+'
aplique el complemento: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion '20.0.0'
defaultConfig {
applicationId "xxx.xxx.xxx"
minSdkVersion 16
targetSdkVersion 19
versionCode 1
versionName "1.0.11"
}
signingConfigs{
releaseConfig{
storeFile file("xxxxxxx")
storePassword = "xxxx"
keyAlias = "xxxx"
keyPassword = "xxxx"
}
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.releaseConfig
// adds version to file name
applicationVariants.all { variant ->
def file = variant.outputFile
variant.outputFile = new File(file.parent, file.name.replace(".apk", "-" + defaultConfig.versionName + ".apk"))
}
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
// You must install or update the Support Repository through the SDK manager to use this dependency.
// You must install or update the Support Repository through the SDK manager to use this dependency.
// You must install or update the Google Repository through the SDK manager to use this dependency.
// You must install or update the Support Repository through the SDK manager to use this dependency.
compile 'com.android.support:support-v4:19.+'
compile 'com.android.support:appcompat-v7:19.+'
compile 'com.mcxiaoke.volley:library:1.0.6'
compile 'com.google.code.gson:gson:2.2.+'
}
El proyecto compilado antes sin ningún cambio en ese archivo, obtengo:
obtengo Error: (26, 0) No se encontró el método Gradle DSL: 'runProguard ()'
¿Cómo arreglar eso?
Respuestas:
Por lo que sé
runProguard
fue reemplazado porminifyEnabled
. Todavía no estoy seguro de cómo definir la configuración de proguard, pero una búsqueda en Google debería ayudarlo a descubrirlo.Editar:
Para
outFile
leer aquí: https://groups.google.com/forum/#!topic/adt-dev/4_-5NvxuFB0 cómo lo hacen.En resumen: usaron una versión más compleja:
fuente
applicationVariants.all { variant ->
línea duplicada pero acepté el resto, graciasEn lugar de usarlo
runProguard
en su archivo gradle, intente usarlominifyEnabled
. Esto debería solucionar el problema.runProguard
está en desuso y pronto dejará de funcionar.EDITAR
Para usar
minifyEnabled
, gradle debe actualizarse a la versión 2.2 o superior.fuente
minifyEnabled
(nominifyEnable
)El cambio en el archivo build.gradle de la aplicación puede ayudar:
antiguo:
nuevo:
fuente
Si está utilizando la versión 0.14.0 o superior del
gradle
complemento, debe reemplazar "runProguard
" con "minifyEnabled
" en susbuild.gradle
archivos.Solo agrega esto.
minifyEnabled false
Significa que los nombres de tipo de compilación no pueden ser main o androidTest (esto se aplica mediante el complemento) y que deben ser únicos entre sí.La nueva versión del
Gradle
complemento de Android , puede eliminar automáticamente los recursos no utilizados. La gran victoria aquí es que elimina los recursos no utilizados no solo de su propio código, sino más importante de las bibliotecas que está utilizando (por ejemplo, donde hay recursos incluidos para admitir funciones que no está utilizando realmente desde su aplicación).fuente
A partir de Gradle 0.14.4 , estos errores se informan como errores en tiempo de compilación.
Entonces tienes que reemplazar
runProguard false/true
conminifyEnabled false/true
Los cambios se enumeran en el Blog de desarrolladores de Android .
fuente
La migración de Gradle Projects a la versión 1.0.0 necesita un trabajo de cambio de nombre fácil, todo se describe aquí: http://tools.android.com/tech-docs/new-build-system/migrating-to-1-0-0
Para proguard, simplemente puede cambiar el nombre de 'runProguard' => 'minifyEnabled', para los demás ver a continuación:
fuente
Esto se debe a la actualización de las herramientas de Android Gradle a 0.14.3. En su archivo "build.gradle" reemplace
por:
Hasta que lo arreglen ...
fuente
runProguard ha cambiado de nombre a minifyEnabled en la versión 0.14.0 (31/10/2014) de Gradle.
Para solucionar esto, debe cambiar runProguard para minifyEnabled en el archivo build.gradle de su proyecto.
fuente