Eclipse,Android Studio项目结构图与SDK工程目录结构图

    xiaoxiao2021-03-26  20

    导读

    最近想重新复习、整理下以前的笔记,也方便下刚学习Android的同学们或从eclipse转Android Studio的同志们,作以下文章提供学习0.0

    看图以简析为准,有新增内容


    Eclipse 项目结构:

    Eclipse 项目结构图:

    ==注意:==

    如果同学们发现有些目录没有,那是因为需要自己创建的

    Eclipse 工程目录结构简析:

    src:java源代码存放目录

    gen:系统自动生成的文件目录

    R.java 中记录了项目中各种资源ID

    assets:资源文件目录,不会在R文件注册,文件会原封不动的保存到apk包中

    libs 工程依赖库目录(jar包),会被添加到android depend 目录下

    res:系统资源目录,所有文件都会在R文件生成资源ID

    res/anim/ (自创建文件)

    存放定义渐变动画的XML文件

    res/animator/ (自创建文件)

    - 存放定义属性动画的XML文件

    drawable:存放应用程序的图片 (自创建文件)

    h high 高分辨率l low 低分辨率m middle 中间分辨率x 特大分辨率xx 超大分辨率

    layout:界面布局目录

    res/raw/ (自创建文件)

    该目录用于存放应用使用到的原始文件,如音效文件等。编译软件时,这些数据不会被编译,不会在R文件注册,文件会原封不动的保存到apk包中(raw与assert调用方式不同)要使用原始 InputStream 打开这些资源,请使用资源 ID(即 R.raw.filename)调用Resources.openRawResource()。但是,如需访问原始文件名和文件层次结构,则可以考虑将某些资源保存在 assets/ 目录下(而不是 res/raw/)。assets/ 中的文件没有资源 ID,因此您只能使用 AssetManager 读取这些文件。

    res/values/:专门存放应用使用到的各种类型数据目录。不同类型的数据存放在不同的文件中.

    strings.xml 定义字符串和数值arrays.xml 定义数组colors.xml定义颜色和颜色字串数值dimens.xml 定义尺寸数据styles.xml 定义样式。(可自定义一个新的.xml文件,专门放我们自定义的style)attrs.xml 自定义控件属性设计(自定义)

    res/xml/ (自创建文件)

    在Activity中使用getResources().getXML()读取该目录下的XML资源文件preference.xml PreferenceActivity或PreferenceActivity的布局文件可以在运行时通过调用 Resources.getXML() 读取的任意 XML 文件。各种 XML 配置文件(如可搜索配置)都必须保存在此处。

    AndroidManifest.xml:清单文件(程序入口文件),在软件安装的时候被读取

    Android中的四大组件(Activity、ContentProvider、BroadcastReceiver、Service)都需要在该文件中注册,程序所需的权限也需要在此文件中声明,例如:电话、短信、互联网、访问SD卡

    proguard-project.txt: 项目混淆文件, 保护代码

    project.properties:项目环境配置文件,读取该项目使用Android版本号.早期版本名为:default.properties

    bin:二进制文件,包括class、资源文件、dex、apk等

    proguard.cfg:用来混淆代码的配置文件,防止别人反编译


    Android Studio 项目结构:

    Android Studio 项目结构图:

    ==注意:==

    res目录,所有以drawable开头的文件夹用来放图片,以mipmap开头的放应用图标,以value开头的放字符串、样式、颜色等配置的,以layout开头的放布局文件由于Android Studio 没有提供drawable-xxx,建议自己创建这些文件夹,一般都放在drawable-xxhdpi文件夹下即可.9图只能放在drawable目录下

    Android Studio 工程目录结构简析:

    ├─.gradle 系统自动生成的gradle目录(不用关心) ├─.idea 系统自动生成的关于AS的环境配置目录.包括版权,字典,jar包信息,项目名称,编译信息等等 │ .gitignore git忽略文件列表 │ build.gradle 项目全局的Gradle构建脚本 │ gradle.properties 全局的Gradle配置文件,这里配置的属性会影响到项目中所有的gradle编译版本 │ gradlew 用于在命令行界面中执行gradle命令(只能在Linux或Mac中使用) │ gradlew.bat 用于在命令行界面中执行gradle命令(只能在Windows中使用) │ local.properties 本地属性文件,用于指定本地Android sdk路径 │ MyApplication.iml IntelliJ IDEA项目自动生成的文件.(不用关心) │ settings.gradle 用于指定项目中所有引入的模块.(不用关心) │ ├─app moudle 目录,项目的代码,资源等内容都放这里 │ │ .gitignore git忽略文件列表 │ │ app.iml IntelliJ IDEA项目自动生成的文件(不用关心) │ │ build.gradle 当前Module的Gradle编译文件 │ │ proguard-rules.pro proguard混淆文件 │ │ │ ├─build 系统自动生成的当前moudle的编译目录,相当于Eclipse中默认Java工程的bin目录.编译生成的apk在此目录 │ ├─libs jar依赖包存放目录 │ └─src java源代码存放目录 │ ├─androidTest 用于编写Android测试用例的 │ │ └─java │ │ └─zs │ │ └─xmx │ │ └─myapplication │ │ ApplicationTest.java │ │ │ ├─test 用于编写Unit测试用例的 │ │ │ └─main 主目录(存放java文件,资源,清单文件) │ │ AndroidManifest.xml 清单文件,用于给应用程序添加权限声明 │ │ │ ├─java java源码目录 │ │ └─zs │ │ └─xmx │ │ └─myapplication │ │ MainActivity.java │ │ │ └─res 资源文件目录 │ ├─drawable 图片资源.9图片只能放到drawable目录下,建议自己创建如下mipmap-xxx文件,一般都放在drawable-xxhdpi文件夹下即可 │ │ │ ├─layout 界面布局目录 │ │ activity_main.xml │ │ │ ├─menu menu菜单xml文件 │ │ menu_main.xml │ │ │ ├─mipmap-hdpi 高分辨率图标 │ │ ic_launcher.png │ │ │ ├─mipmap-mdpi 中间分辨率图标 │ │ ic_launcher.png │ │ │ ├─mipmap-xhdpi 特大分辨率图标 │ │ ic_launcher.png │ │ │ ├─mipmap-xxhdpi 超大分辨率图标 │ │ ic_launcher.png │ │ │ ├─values 专门存放应用使用到的各种类型数据目录。不同类型的数据存放在不同的文件中. │ │ strings.xml 定义字符串和数值 │ │ arrays.xml 定义数组 │ │ colors.xml定义颜色和颜色字串数值 │ │ dimens.xml 定义尺寸数据 │ │ styles.xml 定义样式。 │ │ attrs.xml 自定义控件属性设计(自定义) │ │ │ │ │ └─values-w820dp │ dimens.xml │ ├─build 系统自动生成项目空间的编译目录 └─gradle gradle 目录,包含了gradle wrapper的配置文件 └─wrapper gradle wrapper可以看作是对gradle的封装,它可以使得在没有安装gradle的电脑上也可以使用Gradle进行构建.(不用关心) gradle-wrapper.jar gradle 下载的jar包缓存,具体在 .gradle\caches\modules-2\files-2.1目录 gradle-wrapper.properties 声明了gradle的目录与下载路径以及当前项目使用的gradle版本

    补充 : 需要自己建立的文件夹

    main/assets/ main/aidl/ main/jni/ -->放置c代码 main/jniLibs/ -->放置so库 main/res/raw/-->放原始文件 main/res/anim/-->放渐变动画XML文件 main/res/animator/-->放属性动画XML文件 main/res/xml/ --> xml资源文件

    可参照Eclipse结构简析


    SDK工程目录结构:

    SDK工程目录结构图:

    SDK工程目录简析:

    add-ons: 附加组件,放在一个额外的工具.google api,提供google地图的jar包

    build-tools: 编译工具,谷歌sdk升级后采用的目录

    docs: 文档目录.开发文档.

    extras: 附加工具

    support: 提供向下兼容的jar包.和额外的驱动,摄像头驱动,手机驱动

    platform: 开发平台

    platform tools: 开发的工具

    sample: 实例代码

    source: 源代码

    system-image: 系统镜像

    tools目录: 开发工具

    转载请注明原文地址: https://ju.6miu.com/read-659574.html

    最新回复(0)