AI智能
改变未来

Android studio项目目录结构

Android studio项目目录结构

  • 一、gradle目录
  • 二、idea目录
  • 三、moudle(App)目录
  • 1、build目录
  • 2、libs目录
  • 3、src目录
  • (1)AndroidTest
  • (2)Java
  • (3) res
  • A、资源介绍
  • 图片资源
  • 布局资源
  • values目录
  • raw目录
  • 动画资源
  • B、如何使用资源
  • (4)AndroidManifest.xml
  • (5)test
  • 新建一个工程项目 Project视图下的目录结构如下图所示:

    目录文件 作用
    .gradle gradle项目产生文件夹(自动编译工具产生的文件)
    .idea IDEA项目文件夹(开发工具产生的文件)
    app module模块
    build 构建时生成文件的地方
    gradle gradle环境支持文件夹
    .gitignore git源码管理文件
    build.gradle gradle项目自动编译的配置文件
    gradlew 自动完成 gradle 环境的linux mac 脚本,配合gradle 文件夹使用
    gradlew.bat 自动完成 gradle 环境的windows 脚本,配合gradle 文件夹使用
    local.properties Android SDK NDK 环境路径配置
    setting.gradle gradle 项目的子项目包含文件

    一、gradle目录


    .gradle 是AS自动生成的目录,一般情况不做修改

    二、idea目录


    idea 是AS自动生成的目录,一般情况不做修改

    三、moudle(App)目录

    目录文件 作用
    build 编译时生成
    libs 存放第三方的jar包
    src module源码所在目录
    .gitignore git源码管理文件
    app.iml intellij IDEA项目都会自动生成的,AS是基于IDEA开发的
    build.gradle app模块的gradle构建脚本
    proguard-rules.pro 指定代码混淆

    1、build目录

    和外层的build类似主要包含编译时自动生成的内容,其中在outputs文件夹下存放打包好的apk文件(debug和release)

    2、libs目录

    如果项目中是用了第三方的jar包,就需要把jar包放到libs目录下,然后jar包会被自动添加到构建路径(如集成百度地图sdk,把jar包放到libs目录。可以在build.gradle(app)文件中查看当前项目依赖)

    3、src目录


    module源码所在目录

    (1)AndroidTest

    用来编写Android test 测试用例的,可以对项目进行一些自动化测试

    (2)Java

    放Java代码的地方

    (3) res

    存放我们各种资源文件的地方,有图片,字符串,动画,音频等,还有各种形式的XML文件

    A、资源介绍

    图片资源

    drawable:存放各种位图文件,(.png,.jpg,.9png,.gif等)除此之外可能是一些其他的drawable类型的XML文件

    mipmap-hdpi:高分辨率,一般我们把图片丢这里
    mipmap-mdpi:中等分辨率,很少,除非兼容的的手机很旧
    mipmap-xhdpi:超高分辨率,手机屏幕材质越来越好,以后估计会慢慢往这里过渡
    mipmap-xxhdpi:超超高分辨率,这个在高端机上有所体现

    布局资源

    layout:该目录下存放的就是我们的布局文件,另外在一些特定的机型上,我们做屏幕适配,比如480*320这样的手机,我们会另外创建一套布局,就行:layout-480×320这样的文件夹!

    values目录

    emens.xml:定义尺寸资源
    string.xml:定义字符串资源
    styles.xml:定义样式资源
    colors.xml:定义颜色资源
    arrays.xml:定义数组资源
    attrs.xml:自定义控件时用的较多,自定义控件的属性!
    theme主题文件:和styles很相似,但是会对整个应用中的Actvitiy或指定Activity起作用,一般是改变窗口外观的!可在Java代码中通过setTheme使用,或者在Androidmanifest.xml中为<application…>添加theme的属性! PS:你可能看到过这样的values目录:values-w820dp,values-v11等,前者w代表平板设备,820dp代表屏幕宽度;而v11这样代表在API(11),即android 3.0后才会用到的!

    raw目录

    用于存放各种原生资源(音频,视频,一些XML文件等),我们可以通过openRawResource(int id)来获得资源的二进制流!其实和Assets差不多,不过这里面的资源会在R文件那里生成一个资源id而已

    动画资源

    animator:存放属性动画的XML文件
    anim:存放补间动画的XML文件

    B、如何使用资源

    我们所有的资源文件都会在R.java文件下生成一个资源id,我们可以通过这个资源id来完成资源的访问,使用情况有两种:Java代码中使用和XML代码中使用。

    Java代码中使用:

    Java 文字:

    txtName.setText(getResources().getText(R.string.name));

    图片:

    imgIcon.setBackgroundDrawableResource(R.drawable.icon);

    颜色:

    txtName.setTextColor(getResouces().getColor(R.color.red));

    布局:

    setContentView(R.layout.main);

    控件:

    txtName = (TextView)findViewById(R.id.txt_name);

    XML代码中使用:

    通过@xxx即可得到,比如这里获取文本和图片:

    <TextView android:text=\"@string/hello_world\" android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:background = \"@drawable/img_back\"/>

    (4)AndroidManifest.xml

    整个项目的配置文件,四大组件都需要在这里注册才能正常的运行

    (5)test

    用来编写Unit Test测试用例的,是对项目进行自动化测试的另一种方式。

    赞(0) 打赏
    未经允许不得转载:爱站程序员基地 » Android studio项目目录结构