Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Plug-in do Android para Gradle 3.1.0 (março de 2018)
Esta versão do plug-in do Android requer o seguinte:
|
Versão mínima |
Versão padrão |
Observações |
Gradle |
4.4 |
4.4 |
Para saber mais, consulte Como atualizar o Gradle. |
Ferramentas de build do SDK |
27.0.3 |
27.0.3 |
Instale ou configure as Ferramentas de build do SDK. Lembre-se de que não é mais necessário especificar uma versão para o Build Tools usando a propriedade android.buildToolsVersion. O plug-in usa a versão mínima necessária por padrão. |
Novo compilador DEX, D8
Por padrão, o Android Studio agora usa um novo compilador DEX denominado D8. A compilação
DEX é o processo de transformar bytecode .class
em
bytecode .dex
para o Android Runtime (ou Dalvik, para versões
mais antigas do Android). Em comparação com o compilador anterior, chamado DX, o D8
compila mais rapidamente e gera arquivos DEX menores, com performance igual ou
melhor em relação ao tempo de execução do app.
O fluxo de trabalho cotidiano de desenvolvimento de apps não vai mudar com o D8. No entanto, se você
tiver algum problema relacionado ao novo compilador,
informe um bug. Para desativar temporariamente
o D8 e usar o DX, inclua o seguinte no arquivo
gradle.properties
do seu projeto:
android.enableD8=false
Para projetos que
usam recursos da linguagem Java 8,
a simplificação de leitura incremental é ativada por padrão. Você pode desativá-la
especificando o seguinte no arquivo gradle.properties
do seu projeto:
android.enableIncrementalDesugaring=false.
Usuário da versão de pré-lançamento: se você já estiver usando uma versão de pré-lançamento do D8, observe
que agora ele é compilado em bibliotecas incluídas no
SDK Build Tools, não no JDK.
Portanto, se você acessa APIs já existentes no JDK, mas não nas bibliotecas do SDK Build Tools,
ocorre um erro de build.
Mudanças de comportamento
-
Ao criar vários APKs voltados, cada um, para uma ABI diferente,
o plug-in não gera mais APKs para as seguintes ABIs por padrão:
mips
, mips64
e armeabi
.
Se você quiser criar APKs voltados para essas ABIs, use o
NDK r16b ou anterior e
especifique as ABIs no arquivo build.gradle
, como mostrado abaixo:
splits {
abi {
include 'armeabi', 'mips', 'mips64'
...
}
}
splits {
abi {
include("armeabi", "mips", "mips64")
...
}
}
-
O cache de build do plug-in do Android agora
mostra entradas de cache com mais de 30 dias.
-
Transmitir "auto"
para
resConfig
não seleciona mais recursos de string automaticamente para empacotar no seu APK.
Se você continuar usando "auto"
, o plug-in vai empacotar todos os recursos
de string que seu app e as dependências dele fornecerem. Portanto, é necessário
especificar cada localidade a ser empacotada pelo plug-in no seu APK.
-
Como os módulos locais não podem depender do APK de teste do app, adicionar
dependências aos seus testes instrumentados usando
a configuração androidTestApi
, em vez de
androidTestImplementation
, faz com que o Gradle emita
o seguinte aviso:
WARNING: Configuration 'androidTestApi' is obsolete
and has been replaced with 'androidTestImplementation'
WARNING: Configuration 'androidTestApi' is obsolete
and has been replaced with 'androidTestImplementation'
Correções
- Corrigido um problema em que o Android Studio não reconhecia
dependências em builds compostos.
- Corrige um problema em que um erro de sincronização ocorria no projeto ao carregar o
plug-in do Android várias vezes em um único build. Por exemplo, quando vários
subprojetos incluíam o plug-in do Android no caminho de classe do
buildscript.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-09-03 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-03 UTC."],[],[],null,["\u003cbr /\u003e\n\nAndroid Gradle Plugin 3.1.0 (March 2018)\n\nThis version of the Android plugin requires the following:\n\n| | Minimum version | Default version | Notes |\n|----------------:|:---------------:|:---------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|\n| Gradle | 4.4 | 4.4 | To learn more, see [updating Gradle](/build/releases/gradle-plugin?buildsystem=ndk-build#updating-gradle). |\n| SDK Build Tools | 27.0.3 | 27.0.3 | [Install](/studio/intro/update#sdk-manager) or [configure](/tools/releases/build-tools) SDK Build Tools. Keep in mind, you no longer need to specify a version for the build tools using the android.buildToolsVersion property---the plugin uses the minimum required version by default. |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nNew DEX compiler, D8\n\nBy default, Android Studio now uses a new DEX compiler called D8. DEX\ncompilation is the process of transforming `.class` bytecode into\n`.dex` bytecode for the Android Runtime (or Dalvik, for older\nversions of Android). Compared to the previous compiler, called DX, D8\ncompiles faster and outputs smaller DEX files, all while having the same or\nbetter app runtime performance.\n\nD8 shouldn't change your day-to-day app development workflow. However, if\nyou experience any issues related to the new compiler, please\n[report a bug](/studio/report-bugs). You can temporarily\ndisable D8 and use DX by including the following in your project's\n`gradle.properties` file: \n\n android.enableD8=false\n \nFor projects that\n[use Java 8 language features](/studio/write/java8-support),\nincremental desugaring is enabled by default. You can disable it by\nspecifying the following in your project's `gradle.properties` file: \n\n android.enableIncrementalDesugaring=false.\n \n\n**Preview users:** If you're already using a preview version of D8, note\nthat it now compiles against libraries included in the\n[SDK build tools](/studio/releases/build-tools)---not the JDK.\nSo, if you are accessing APIs that exist in the JDK but not in the SDK build\ntools libraries, you get a compile error.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nBehavior changes\n\n- When building multiple APKs that each target a different ABI, the\n no longer generates APKs for the following ABIs by default:\n `mips`, `mips64`, and `armeabi`.\n\n If you want to build APKs that target these ABIs, you must use\n [NDK r16b or lower](/ndk/downloads/revision_history) and\n specify the ABIs in your `build.gradle` file, as shown below: \n\n ```groovy\n splits {\n abi {\n include 'armeabi', 'mips', 'mips64'\n ...\n }\n }\n \n ``` \n\n ```kotlin\n splits {\n abi {\n include(\"armeabi\", \"mips\", \"mips64\")\n ...\n }\n }\n \n ```\n- The Android plugin's [build\n cache](/studio/build/build-cache) now evicts cache entries that are older than 30 days.\n\n- Passing `\"auto\"` to\n [`resConfig`](https://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.ProductFlavor.html#com.android.build.gradle.internal.dsl.ProductFlavor:resConfig(java.lang.String))\n no longer automatically picks string resources to package into your APK.\n If you continue to use `\"auto\"`, the plugin packages all string\n resources your app and its dependencies provide. So, you should instead\n specify each locale that you want the plugin to package into your APK.\n\n- Because local modules can't depend on your app's test APK, adding\n dependencies to your instrumented tests using the\n `androidTestApi` configuration, instead of\n `androidTestImplementation`, causes Gradle to issue the\n following warning:\n\n ```groovy\n WARNING: Configuration 'androidTestApi' is obsolete\n and has been replaced with 'androidTestImplementation'\n \n ``` \n\n ```kotlin\n WARNING: Configuration 'androidTestApi' is obsolete\n and has been replaced with 'androidTestImplementation'\n \n ```\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nFixes\n\n- Fixes an issue where Android Studio doesn't properly recognize dependencies in composite builds.\n- Fixes an issue where you get a project sync error when loading the Android plugin multiple times in a single build--for example, when multiple subprojects each include the Android plugin in their buildscript classpath.\n\n\u003cbr /\u003e"]]