>> Tecnologia Eletrônica >  >> Celulares e Acessórios >> Celulares Android

Arquivos e Estrutura de Pastas Essenciais de Projeto Android

Entender estrutura projeto Android é fundamental para desenvolvimento eficiente. Breakdown de arquivos e diretórios críticos em projeto Gradle moderno.

Configuração Nível Raiz

  • settings.gradle(.kts): Inclusão projeto, gestão plugins, definições repositórios
  • build.gradle(.kts) [Projeto]: Dependências buildscript (AGP, Kotlin), repositórios allprojects
  • gradle.properties: Args JVM, constantes versões, feature flags
  • gradle/wrapper/gradle-wrapper.properties: Fixação versão Gradle
  • .gitignore: Exclui build/, .gradle/, local.properties, *.iml

Módulo App (Tipicamente app/)

Manifest e Core

  • src/main/AndroidManifest.xml: Permissões, componentes, intent-filters, metadata
  • src/main/java/ ou kotlin/: Pacotes fonte (activities, fragments, ViewModels, repositories, etc.)

Recursos (src/main/res/)

  • layout/: Definições UI XML (ConstraintLayout, interop Compose)
  • values/: strings.xml, colors.xml, dimens.xml, themes.xml, attrs.xml
  • drawable/: Assets vetoriais (XML), raster (PNG/WebP) pastas densidade
  • mipmap/: Ícones launcher (camadas adaptive icon)
  • xml/: Telas preferências, regras backup, config segurança rede
  • raw/: Assets não compilados (JSON, certificados, mídia)
  • font/: Fontes TTF/OTF
  • anim/ & animator/: Animações view/property
  • navigation/: Grafo navegação XML

Configuração Build

  • build.gradle(.kts) [Módulo]: Plugins (com.android.application, kotlin-android), namespace, compileSdk, minSdk, targetSdk, dependências, buildTypes, productFlavors, composeOptions, packagingOptions
  • proguard-rules.pro: Regras keep R8/ProGuard para reflexão, JNI, libs terceiros

Tipos Módulo Adicionais

  • Módulos feature: Entrega dinâmica (sob demanda, instant)
  • Módulos library: Código compartilhado (apply plugin: 'com.android.library')
  • Módulos teste: Unit (test/), instrumentado (androidTest/)

Gerados e Derivados (Não Commit)

  • build/: Todas saídas compilador, fontes geradas, APKs/AABs
  • .gradle/: Cache Gradle
  • local.properties: Caminho SDK (específico máquina)
  • .idea/: Config IDE (commit opcional)

Projetos modernos usam cada vez mais Kotlin DSL (.kts), Jetpack Compose (reduz layout/XML), e catálogos versões (gradle/libs.versions.toml) para gestão dependências.