android工程目录结构

App工程分为两个层次,一个层次是项目,另一个层次是模块
模块依附于项目,每个项目至少有一个模块,也能拥有多个模块
一般所言的"编译运行App",指的是运行某个模块,而非运行某个项目,因为模块才对应实际App
App项目下面有两个分类:app(代表app模块)、Gradle Scripts

app下面有3个子目录,Gradle Scripts下面主要是工程的编译配置文件

app下面3个子目录:

(1)manifests:下面只有一个XML文件,即AndroidManifest.xml,它是App的运行配置文件。

(2)java:下面有3个com.example.myapp包,其中第一个包存放当前模块的java源代码,后面两个包存 放测试用的java代码。

(3)res:存放当前模块的资源文件。res下面又有4个子目录

  • drawable:存放图形描述文件与图片文件
  • layout:存放app的页面的布局文件
  • mipmap:存放app的启动图标
  • values:存放一些常量定义文件,例如字符串常量string.xml、像素常量dimens.xml、颜色常量colors.xml、样式风格定义styles.xml等。

Gradle Scripts下面主要主要文件有:

(1)build.gradle:该文件分为项目级与模块级两种,用于描述app工程的编译规则。

(2)proguard-rules.pro:该文件用于描述java代码的混淆规则。

(3)gradle.properties:该文件用于配置编译工程的命令行参数,一般无需改动。

(4)settings.gradle:该文件配置了需要编译哪些模块。初始内容为include:'app',表示只编译app模块。

(5)local.properties:项目的本地配置文件,它在工程编译时自动生成,用于描述开发者电脑的环境配置,包括SDK的本地路径、NDK的本地路径等。

Gradle是一个项目自动化构建工具,帮我们做了依赖、打包、部署、发布、各种渠道的差异管理等工作

相关推荐
爱勇宝2 小时前
鸿蒙生态的下半场:开发者不只要能开发,还要能赚钱
android·前端·程序员
Yeyu5 小时前
刷新一帧的艺术:invalidate / postInvalidate / postInvalidateOnAnimation全解析
android
潘潘潘7 小时前
Android OTA 升级原理和流程介绍
android
plainGeekDev13 小时前
null 判断 → Kotlin 可空类型
android·java·kotlin
plainGeekDev13 小时前
getter/setter → Kotlin 属性
android·java·kotlin
YXL1111YXL14 小时前
Handler 消息回收与协程异步执行的时序陷阱
android
恋猫de小郭15 小时前
KMP / CMP 鸿蒙版本 Beta 发布,他有什么特别之处?
android·前端·flutter
三少爷的鞋16 小时前
Android 协程并发控制:别动线程池,控制好并发语义就够了
android
weiggle1 天前
第七篇:状态提升与单向数据流——架构设计的核心
android
xingpanvip1 天前
星盘接口开发文档:本命盘接口指南
android·开发语言·css·php·lua