掌握android studio项目结构

来源:互联网 发布:网络通信招聘 编辑:程序博客网 时间:2024/06/05 07:49

Android Studio项目结构学习

自从ADT停止更新之后,Android Studio已经成为了Android开发最主流的IDE开发工具了,在我们常见的项目结构视图有Project和Android两种,

Project结构:

目录结构
这种视图就是常见的以硬盘目录结构为工程结构。
我们可以将上面的结构分为三部分:

外部文件

Gradle是Google推荐使用的一套基于Groovy的编译系统脚本,
- .gradle : Gradle编译系统,版本由wrapper指定
- .idea : Android Studio IDE所需要的文件
- build : 代码编译后生成的文件存放的位置
- gradle: wrapper的jar和配置文件所在的位置
- .gitignore: git使用的ignore文件
- build.gradle: gradle编译的相关配置文件(相当于Makefile)
- gradle.properties: gradle相关的全局属性设置
- gradlew : *nix下的gradle wrapper可执行文件
- graldew.bat: windows下的gradle wrapper可执行文件
- local.properties: 本地属性设置(key设置,android sdk位置等属性),这个文件是不推荐上传到VCS中去的
- settings.gradle 和设置相关的gradle脚本

app模块文件

  • build 编译后的文件存在的位置(包括最终生成的apk也在这里面)
  • libs 依赖的库所在的位置(jar和aar)
  • src 源代码所在的目录
  • src/main 主要代码所在位置(src/androidTest)就是测试代码所在位置了
  • src/main/assets android中附带的一些文件
  • src/main/java 最最重要的,我们的java代码所在的位置
  • src/main/jniLibs jni的一些动态库所在的默认位置(.so文件)
  • src/main/res android资源文件所在位置
  • src/main/AndroidManifest.xml AndroidManifest不用介绍了吧~
  • build.gradle 和这个项目有关的gradle配置,相当于这个项目的Makefile,一些项目的依赖就写在这里面
  • proguard.pro 代码混淆配置文件

Android结构

Android目录
这种视图下,构建工具集和与项目文件集合分离,因此可以看到比较清晰的项目结构。app 作为项目惟一的 module 作为一个顶层目录,Gradle Scrpts 作为构建系统的顶层目录。需要注意的是,app 和 Gradle Scripts 并不是真正在硬盘上存在的目录
- build.gradle (Project: ) ,对应于/build.gradle,这个文件是整个 Android 项目的基础配置文件,内容主要包含了两个方面:一个是声明仓库的源,这里可以看到是指明的 jcenter(), 之前版本则是 mavenCentral(),jcenter 可以理解成是一个新的中央远程仓库,兼容 maven 中心仓库,而且性能更优。另一个是声明了android gradle plugin 的版本。
- build.gradle (Module: app) 对应 /app/build.gradle,这个文件是具体 module 的配置文件,针对具体 module 的构建相关修改都应该集中在这里。具体含义参考链接。
- * proguard-rules.pro* (ProGuard Rules for app) 对应 /app/proguard-rules.pro,这个文件用于对 module 内的文件进行混淆声明。
- gradle.properties (Project Properties) 对应/gradle/gradle.properties,这个文件里面声明了gradle的目录与下载路径以及当前项目使用的 gradle 版本,这些默认的路径我们一般不会更改的,这个文件里指明的 gradle 版本不对也是很多导包不成功的原因之一。
- settings.gradle (Project Settings) 对应 /settings.gradle,这个文件是全局的项目配置文件,里面主要声明一些需要加入 gradle 的 module。
- local.properties (SDK Location) 对应/local.properties,包含了 Android SDK 的本地路径,Android 项目构建时会从这里读取 SDK 路径。也可以在这里配置 NDK 路径,格式与 SDK 一样。

0 0
原创粉丝点击