A plataforma Android é uma plataforma linda e com a beleza vêm algumas peculiaridades.
Um deles é a restrição de método acima de 65k.
Eu me deparei com esse obstáculo recentemente, depois de mais de 3 anos escrevendo aplicativos Android. Eu não estava tão zangado, eu estava esperando isso mais cedo ou mais tarde.
This is also the root error that causes the "java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$attr"
error even after cleaning and re-adding the appcompatv7 library to your project. It can also fix the "java exit with code 2" error while trying to build your app.
Esta é uma maneira curta e direta de corrigir esse problema e criar aplicativos que funcionem, com as referências apropriadas no final da página.
Este artigo presume que você esteja familiarizado com o uso do Android Studio e do Gradle.
- Você precisaria configurar seu aplicativo para suporte multidex . Veja abaixo.
Código:
android {
compileSdkVersion 21
buildToolsVersion "21.1.0"
defaultConfig {
...
minSdkVersion 14
targetSdkVersion 21
...
// Enabling multidex support.
multiDexEnabled true
}
...
}
dependencies {
compile 'com.android.support:multidex:1.0.0'
}
Observação: você pode especificar a configuração multiDexEnabled nas seções defaultConfig, buildType ou productFlavor do arquivo de compilação do Gradle.
Execute uma sincronização do Gradle.
Em seu manifesto, adicione a classe MultiDexApplication da biblioteca de suporte multidex ao elemento do aplicativo.
Código:
<?xml version="1.0" encoding="utf-8"?>
<manifest >="http://schemas.android.com/apk/res/android"
package="com.example.android.multidex.myapplication">
<application
...
android:name="android.support.multidex.MultiDexApplication">
...
</application>
</manifest>
Nota: Se você escreveu uma classe de aplicativo personalizada, faça com que ela estenda MultiDexApplication
- Execute seu aplicativo e tudo ficará bem com o mundo.
Você pode querer verificar https://developer.android.com/tools/building/multidex.html para referência e uma visão geral das limitações de uso do MultiDexApplication.
Sinta-se à vontade para enviar quaisquer ideias ou comentários.
Obrigado.