返回顶部
首页 > 资讯 > 移动开发 >Android开发系列——基础篇2:APP工程结构
  • 423
分享到

Android开发系列——基础篇2:APP工程结构

android开发appAndroid 2022-06-06 13:06:19 423人浏览 八月长安
摘要

在安装完成Android studio,进行开发之前,对于工程目录结构的了解是必不可少的。 APP工程结构 工程目录说明 Android stu

在安装完成Android studio,进行开发之前,对于工程目录结构的了解是必不可少的。

APP工程结构

工程目录说明

Android studio的工程目录分为两个层级:
第一层是通过File—>New—>New project创建的新的工作空间(就是新的工程项目
第二层是通过File—>New—>Module创建的新模块(一个单独的APP工程,运行在工作空间中)
以下是一个工程项目的目录结构图

该工程结构主要由两大结构构成:app和Gradle Scripts。

app

app目录下有3个子目录,功能说明如下:

(1)manifests子目录,下面只有一个xml文件,为AndroidManifest.xml,是App运行的配置文件

(2)java子目录,下面有3个com.example.myapplicationtest3的包(以com.example.项目名称为后缀的),其中第一个包存放的是APP的工程的java源代码,后面两个包存放的是测试用的java代码。

(3)res子目录,存放的是APP工程的资源文件。下面默认有4个子目录:

drawable目录:存放的是图形描述文件与用户上传的图片 layout目录:存放的是APP页面的布局文件。 mipmap目录:存放是的启动图标等图标类文件。 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,配置哪些模块在一起编译。初始内容为inclue’:app’,表示只编译APP模块。

(5)local.properties,项目的本地配置,一般无须改动。该文件是在工程编译时自动生成的,用于描述开发者本机的环境配置,如SDK的本地路径等。

配置文件build graddle

项目(Project)级别的build gradle文件一般无须改动,只需要关注模块(Module)级别的build graddle文件。这里对build graddle文件进行相关参数的文字注释。

apply plugin: 'com.android.application'
android {
    //编译指定的SDK版本号。如29表示使用Android 10编译
    compileSdkVersion 29
    //指定编译工具的版本号。具体版本号可在SDK安装目录查询。这里的头两位数字必须与编译SDK版本号一致
    buildToolsVersion "29.0.3"
    defaultConfig {
        //指定该模块的应用编号,也是APP的包名。自动生成,无需修改
        applicationId "com.example.myapplicationtest3"
        //指定APP适合运行的最小SDK版本号
        minSdkVersion 22
        //指定目标设备的SDK版本号,即最优版本号
        targetSdkVersion 29
        //指定APP的应用版本号
        versionCode 1
        //指定APP的应用版本名称
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            //指定是否开启代码混淆功能,true表示开启,false表示无需
            minifyEnabled false
            //指定代码混淆规则文件的文件名
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}
//指定APP的版本依赖信息
dependencies {
    //指定引用jar包的路径
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    //指定单元测试编译用的junit版本号
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    implementation 'androidx.mediarouter:mediarouter:1.0.0'
}
小结

对于工程目录结构的熟悉度直接决定了开发的效率,比如如何进行配置,如何存放图片等资源,所以要时时加深印象。


作者:Maverlous Zhao


--结束END--

本文标题: Android开发系列——基础篇2:APP工程结构

本文链接: https://lsjlt.com/news/29577.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作