Plug-in do Android para Gradle, revisão 1.5.0 (novembro de 2015)
- Dependências:
- Observações gerais:
-
- O plug-in Data Binding foi integrado ao plug-in do Android para Gradle. Para ativá-lo,
adicione o seguinte código a cada arquivo
build.gradle
de projeto que use o plug-in: - Foi adicionada uma nova API Transform
para permitir que plug-ins de terceiros manipulem arquivos
.class
compilados antes de serem convertidos em arquivos.dex
. A API Transform simplifica a injeção de manipulações de classe personalizadas, oferecendo mais flexibilidade em relação ao que você pode manipular. Para inserir uma Transform em um build, crie uma nova classe implementando uma das interfacesTransform
e registre-a emandroid.registerTransform(theTransform)
ouandroid.registerTransform(theTransform, dependencies)
. Não é necessário conectar as tarefas. Observe o seguinte sobre a API Transform: - Uma transformação pode ser aplicada a um ou mais dos seguintes itens: projeto atual, subprojetos e bibliotecas externas.
- Uma Transform precisa ser registrada globalmente, o que a aplica a todas as variantes.
- O processamento interno de código pela biblioteca Java Code Coverage (JaCoCo), do ProGuard
e do MultiDex agora usa a API Transform. No entanto, o Java Android Compiler Kit
(Jack) não usa essa API; somente o caminho do código
javac/dx
a usa. - O Gradle executa as Transforms nesta ordem: JaCoCo, plug-ins de terceiros, ProGuard. A ordem de execução para plug-ins de terceiros corresponde à ordem em que as Transforms são adicionadas pelos plug-ins. Desenvolvedores de plug-ins de terceiros não podem controlar a ordem de execução das Transforms com uma API.
- O getter
dex
da classeApplicationVariant
foi descontinuado. Não é mais possível acessar a tarefaDex
pela API Variant porque agora isso é feito usando uma Transform. Atualmente, não há substituto para controlar o processo de dex. - Corrigido suporte incremental com recursos.
- O suporte ao MultiDex foi aprimorado, tornando-o disponível para projetos de teste, e
agora os testes têm automaticamente a dependência
com.android.support:multidex-instrumentation
. - Agora um build do Gradle pode falhar corretamente e informar a causa do erro subjacente quando o build do Gradle invoca tarefas assíncronas e ocorre um erro no processo do worker.
- Foi adicionado suporte à configuração de uma Interface binária do aplicativo (ABI) específica em variantes que contenham várias ABIs.
- Adicionado suporte a uma lista separada por vírgulas de números de série do dispositivo na variável de ambiente
ANDROID_SERIAL
ao instalar ou executar testes. - Corrigida uma falha de instalação em dispositivos com o Android 5.0 (nível 20 da API) e versões mais recentes quando o nome do APK contém um espaço.
- Correção de vários problemas relacionados à saída de erro da Android Asset Packaging Tool (AAPT).
- Inclusão de compatibilidade com instrumentação incremental de JaCoCo para builds incrementais mais rápidos. O Plug-in do Android para Gradle agora invoca o instrumentador JaCoCo diretamente. Para forçar uma versão mais recente do instrumentador JaCoCo, é preciso adicioná-la como uma dependência de script de build.
- O suporte a JaCoCo foi corrigido para ignorar arquivos que não são classes.
- Adicionado suporte ao drawable vetorial para gerar PNGs durante o build e oferecer compatibilidade com versões anteriores.
O plug-in do Android para Gradle gera PNGs para cada drawable vetorial encontrado em um diretório
de recursos que não especifique uma versão da API ou que especifique um atributo
android:minSdkVersion
de valor 20 ou menos no elemento<uses-sdk>
do manifesto do app. Você pode configurar densidades de PNG usando a propriedadegeneratedDensities
nas seçõesdefaultConfig
ouproductFlavor
de um arquivobuild.gradle
. - Adicionado o compartilhamento do
android.jar
simulado, que o plug-in gera apenas uma vez e usa para o teste de unidade. Vários módulos, comoapp
elib
, agora o compartilham. Exclua$rootDir/build
para gerá-lo novamente. - O processamento de recursos Java foi mudado para ocorrer antes das tarefas de ofuscação, e não mais durante o empacotamento do APK. Essa mudança permite que as tarefas de ofuscação tenham a chance de adaptar os recursos Java após a ofuscação de pacotes.
- Correção de um problema com o uso do código da interface nativa do Java (JNI, na sigla em inglês) no plug-in da biblioteca experimental.
- Inclusão da capacidade de definir a versão da plataforma separadamente do atributo
android:compileSdkVersion
no plug-in da biblioteca experimental.
android { dataBinding { enabled = true } }
android { dataBinding { enabled = true } }
- O plug-in Data Binding foi integrado ao plug-in do Android para Gradle. Para ativá-lo,
adicione o seguinte código a cada arquivo
Versão mínima | Versão padrão | Observações | |
---|---|---|---|
Gradle | 2.2.1 | 2.2.1 | Para saber mais, consulte Como atualizar o Gradle. |
Ferramentas de build do SDK | 21.1.1 | 21.1.1 | Instale ou configure as Ferramentas de build do SDK. |