Soluções para Problemas Comuns no Android Studio

1. Dependências não encontradas após sincronização

Após adicionar dependências no build.gradle, elas não aparecem na pasta library ou geram erro de dependência não encontrada.

Solução A - Dependências com arquivo JAR

Cole o arquivo JAR diretamente na pasta libs (crie se não existir). Clique com o botão direito no arquivo e selecione "Add as Library".

Solução B - Alterar repositório Maven

No build.gradle do projeto, adicione:

maven { url 'https://maven.aliyun.com/repository/public/' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/central' }

2. Erro de compilação AAPT2

A desativação do AAPT2 com android.enableAapt2=false não é mais suportada. A solução é ajustar as versões do SDK:

compileSdkVersion 30
buildToolsVersion "30.0.0"
targetSdkVersion 33

3. Aplicativo não lê certos tipos de arquivo

Para acesso a arquivos específicos como DSD, adicione no AndroidManifest.xml:

<application
    android:requestLegacyExternalStorage="true">
    ...
</application>

4. Conflito entre Android Support e AndroidX

Erros de classes duplicadas entre android.support e androidx. Adicione ao gradle.properties:

android.useAndroidX=true
android.enableJetifier=true

5. Erro R8 - Classes ausentes durante ofuscação

Adicione as regras do arquivo missing_rules.txt ao proguard-rules.pro:

# Conteúdo do arquivo missing_rules.txt
-keep class nome.da.classe. Ausente { *; }

6. Problemas com bibliotecas de terceiros

Erro de protocolo Retrofit/OkHttp

Atualize para versões compatíveis:

implementation 'com.squareup.okhttp3:okhttp:4.12.0'
implementation 'com.squareup.retrofit2:retrofit:2.9.0'

Erro Firebase Crashlytics

Desabilite upload de símbolos no build.gradle do app:

gradle.taskGraph.whenReady {
    tasks.each { task ->
        if (task.name.contains("uploadCrashlyticsMappingFile")) {
            task.enabled = false
        }
    }
}

7. Dependências não resolvidas

Adicione repositórios alternativos:

allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
    }
}

8. Recursos Gradle obsoletos

Atualize configuração do build.gradle:

allprojects {
    buildscript {
        repositories {
            mavenCentral()
            google()
        }
    }
    repositories {
        mavenCentral()
        google()
    }
}

9. Erro TransformTask

Use Gradle versão 7.x.x. No gradle-wrapper.properties:

distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip

10. Aviso de compatibilidade Android

Aumente minSdkVersion no build.gradle:

defaultConfig {
    minSdkVersion 21
}

11. Protocolo inseguro em repositórios

Para Gradle 7+, use:

repositories {
    maven {
        allowInsecureProtocol true
        url 'https://seu-repositorio-maven'
    }
}

12. Erro Build Listener

Reduza versão do Gradle Plugin:

dependencies {
    classpath 'com.android.tools.build:gradle:4.2.2'
}

13. Erro de certifiacção SSL

Use espelho de download alternativo:

distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-6.6.1-bin.zip

14. Conflito de classes.dex

Ajuste configurações:

dependencies {
    classpath 'com.android.tools.build:gradle:4.0.1'
}
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip

15. Erro lintVitalRelease

Desabilite verificação lint no release:

android {
    lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }
}

16. Erro TransformException

Atualize repositórios Maven:

maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }

17. Erro FragmentManager

Comente método onDetach() no Fragment:

@Override
public void onDetach() {
    // super.onDetach();
}

18. NDK toolchain não encontrado

Use versão compatível do NDK nas configurações do projeto.

19. Erro de compilação JDK

Use JDK 11 ou superior. Configure em File > Project Structure > SDK Location.

20. Conflito de recursos XML

Verifique recursos duplicados em diferentes módulos ou biblioetcas.

Tags: android AndroidStudio Gradle AndroidX NDK

Publicado em 8-11 14:30