Estou usando o android studio 0.9.3 com gradle 'com.android.tools.build:gradle:0.14.+'
aplique o plugin: '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.+'
}
O projeto compilado antes sem nenhuma alteração nesse arquivo, estou recebendo:
Erro: (26, 0) Método DSL Gradle não encontrado: 'runProguard ()'
Como consertar isso?
Respostas:
Tanto quanto eu sei
runProguard
foi substituído porminifyEnabled
. Ainda não tenho certeza de como definir a configuração para proguard, mas uma pesquisa no Google deve ajudá-lo a descobrir.Editar:
Para
outFile
ler aqui: https://groups.google.com/forum/#!topic/adt-dev/4_-5NvxuFB0 como eles fazem isso.Em resumo: eles usaram uma versão mais complexa:
fonte
applicationVariants.all { variant ->
de linha, mas aceitou o resto, graçasEm vez de usar
runProguard
no seu arquivo gradle, tente usarminifyEnabled
. Isso deve corrigir o problema.runProguard
foi descontinuado e em breve deixará de funcionar.EDITAR
Para usar
minifyEnabled
, o gradle deve ser atualizado para a versão 2.2 ou superior.fonte
minifyEnabled
(nãominifyEnable
)A alteração no arquivo build.gradle do aplicativo pode ajudar:
velho:
Novo:
fonte
Se você estiver usando a versão 0.14.0 ou posterior do
gradle
plug - in, substitua "runProguard
" por "minifyEnabled
" em seusbuild.gradle
arquivos.Apenas adicione isto.
minifyEnabled false
Significa que os nomes dos tipos de compilação não podem ser main ou androidTest (isso é imposto pelo plug-in) e que eles precisam ser exclusivos um do outro.A nova versão do
Gradle
plug-in Android pode remover automaticamente recursos não utilizados. A grande vitória aqui é que ele remove recursos não utilizados, não apenas do seu próprio código, mas mais importante das bibliotecas que você está usando (por exemplo, onde existem recursos incluídos para oferecer suporte a recursos que você realmente não está usando no seu aplicativo).fonte
No Gradle 0.14.4 , esses erros são relatados como erros em tempo de compilação.
Então você tem que substituir
runProguard false/true
porminifyEnabled false/true
As alterações estão listadas no Blog dos desenvolvedores do Android .
fonte
A migração de projetos Gradle para a versão 1.0.0 precisa de um trabalho fácil de renomear, tudo é descrito aqui: http://tools.android.com/tech-docs/new-build-system/migrating-to-1-0-0
Para proguard, você pode simplesmente renomear 'runProguard' => 'minifyEnabled', para os outros, veja abaixo:
fonte
Isso ocorre devido à atualização das ferramentas do Android Gradle para a 0.14.3. Em seu arquivo "build.gradle" substitua
de:
Até eles consertarem ...
fonte
O runProguard foi renomeado para minifyEnabled na versão 0.14.0 (31/10/2014) do Gradle.
Para corrigir isso, você precisa alterar runProguard para minifyEnabled no arquivo build.gradle do seu projeto.
fonte