美文网首页
android studio项目目录结构

android studio项目目录结构

作者: 鱼嘿蛮仁 | 来源:发表于2024-01-29 18:32 被阅读0次

    一、Project目录结构

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

    module(app)

    每一个module可看成在Eclipse中的一个Project,里面的文件结构与父类差不多。里面也能包含build.gradle、gradle.properties、setting.gradle 等相关gradle文件,若没有定义,则在项目中使用父类的设置。

    gradle目录

    里面wrapper目录下有两个文件,里面有一些项目对gradle的配置信息,gradle-wrapper.properties声明了gradle的目录与下载路径以及当前项目使用的gradle版本。默认的路径我们一般不会更改。

    image.png

    build.gradle文件

    项目的编译环境配置,可以说是Gradle最主要的配置文件。先来看下里面的内容。


    image.png

    这里是对Project的配置,是最顶层的配置,在module中同样有一个build.gradle文件,是对module的配置,如果module里没有进行配置,将使用这里的配置信息。一个是声明仓库的源,这里可以看到是指明的jcenter(), jcenter可以理解成是一个新的中央远程仓库,兼容maven中心仓库,而且性能更优。另一个是声明了android gradle plugin的版本。

    gradle.properties文件

    配置gradle运行环境的文件,比如配置gradle运行模式,运行时jvm虚拟机的大小。在创建的项目中,暂时是没有内容的。

    setting.gradle文件

    声明当前项目中含有什么module。如果有多个module会以‘,’分开,如:include ‘:app’, ‘:app2’

    Module目录结构

    目录文件 作用
    build module编译时所生成文件的目录
    lib 第三方依赖库所在目录
    src module源码所在目录
    src\andrroidTest android Studio生成的测试模块,可删除
    src\main module代码目录,结构和Eclipse中的差不多了
    src\test 单元测试模块,可删除
    .gitignore module中的git管理文件
    app.iml module中的IDEA 项目文件
    build.gradle module自动编译的配置文件
    proguard-rules.pro module代码混淆配置文件

    build目录

    module的编译文件目录,编译中生成的中间文件就在这里。
    编译最终生成的apk就在build/outputs/apk目录下。

    build.gradle文件

    这个文件是Module的gradle配置文件,也可以算是整个项目最主要的gradle配置文件。

    // 这句是gradle版本的写法,声明是这是一个Android程序。
    apply plugin: 'com.android.application'
    
    //Android项目中的配置:
    android {
        compileSdkVersion 26// 编译android的sdk版本
        defaultConfig {
            //  应用的包名
           applicationId "com.xx.text"
            // 允许的最少版本
            minSdkVersion 15
            // 目标版本
            targetSdkVersion 26
            // apk的版本
            versionCode 1
            // apk的显示版本
            versionName "1.0"
            //测试配置  
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
        buildTypes {
            // 表明是在release版本中使用的配置
            release {
                //签名
                signingConfig = signingConfigs. bgctv9512C2Config
                // 是否运行混淆
                minifyEnabled false
                // 混淆的配置文件路径,默认给了我们两个配置文件。
                // proguard-android.txt在<sdk目录>/tools/proguard下面,里面已经包含了基本的混淆声明,有兴趣的可以去看下。
                // proguard-rules.pro是在module根目录下面,我们可以根据项目去添加。
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
        
        //签名设置
        signingConfigs {
            bgctv9512C2Config {
                storeFile file("../system_signa_file/xxx.keystore")
                storePassword "xxx"
                keyAlias "xxx"
                keyPassword "xxx"
            }
        }
    
    }
    
    // 表明是依赖库配置
    dependencies {
        // 表明依赖libs目录下的所有jar包
        implementation fileTree(include: ['*.jar'], dir: 'libs')
        // 表明在编译项目的测试代码时依赖 (用以声明测试用例库)
        testCompile 'junit:junit:4.12'
        //测试用例所需要的依赖
        compile 'com.android.support:appcompat-v7:23.1.1'
        compile 'com.android.support:design:23.1.1'
    }
    

    相关文章

      网友评论

          本文标题:android studio项目目录结构

          本文链接:https://www.haomeiwen.com/subject/ypagodtx.html