文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Android Studio里项目的各目录与文件

2023-09-11 16:37

关注

一、总项目的目录结构

我们使用Android Studio创建安卓项目成功后,就会出现以下这个文件结构:

  1. .idea是自动生成的文件,无需理会。

  1. app为最重要的文件,里面放置的便是项目的代码文件和资源文件。

  1. gradle,顾名思义,就是构建项目的gradle。为了使得构建你的app项目方便管理,使用gradle是最好的。而gradle文件里面包含gradlewrapper配置文件,使用gradle wrapper方式会自动联网下载gradle,,当然AndroidStudio会首先检查本地是否有缓存gradle,没有就会自动联网下载gradle,这样就不用自己先下载gradle。

  1. .gitignore文件,将指定的文件排除在版本控制之外。

  1. build.gradle,项目全局的gradle构建脚本,也是重要的文件之一。

  1. gradle.properties,全局的gradle配置文件,这里配置的属性能影响到项目所有的gradle编译脚本。

  1. gradlew和gradlew.bat,用于在命令行界面下执行gradle命令,gradlew在linux和mac中执行,gradlew.bat则在windows下执行。

  1. local.properties,本机中AndroidSDK的路径,一般自动生成,除非发生变化,则要修改。

  1. setting.gradle,用于指定项目中所有引入的模块。一般可自动生成,也可自行设置,比如引入flutter模块时,可在此文件上设置该模块路径等。

二、app目录下的结构

app该目录是最重要的,因为它就是项目源码的所在地方,它的目录结构如下:

  1. libs,如项目需用到第三方jar包(比如百度地图,极光推送等),则需要将这些jar包放到此目录下。

  1. src,有三个目录,androidTest目录用来编写Android Test测试用例的,进行自动化测试用的。test目录则用来编写Unit Test测试用的,也是进行自动化测试用的。main目录中的java目录则是存放所有你的项目源代码,res目录则存放资源文件,资源文件是什么,就是你的布局文件,字符串文件,图片文件等,都放此目录,当然布局文件存放在layout目录,字符串文件等放在values目录,图标则放在mipmap目录下,图片则放在drawable目录下。最后,还有一个文件AndroidManifest.xml文件,它是注册四大组件的,还可以添加应用权限。

  1. .gitignore,将app中的文件和目录排除在版本控制之外。

  1. build.gradle文件,app模块的gradle构建脚本,指定项目构建相关的配置。

  1. proguard-rules.pro,是混淆文件,指定项目代码的混淆规则,为了防止apk文件被别人破解时采取混淆代码。

三、最外层目录下的build.gradle文件和app目录下的build.gradle文件

  1. 最外层目录下的build.gradle文件,它的代码如图所示:

buildscript意思构建描述,repositories里声明的google()和jcenter()分别表示添加Google自己的官方扩展依赖库。一些第三方的开源库声明了这两个库,那么项目中就可以轻松引用这些仓库中的依赖库了。Dependencies里声明的是Gradle插件,因为Gradle插件不仅仅为构建Android项目服务的,它还可以构建java项目和C++项目的,所以要声明Gradle插件是构建Android项目的,版本号跟Android Studio的版本号一致。allprojects里的声明同上,不解释了。

  1. app目录下的build.gradle文件,它的代码如图所示:

第一行,apply是引用了com.android.application这个插件,代表它是一个应用程序模块,还可以apply另外一种模块,就是com.android.library模块,它表示库模块。两个模块的区别在于应用程序模块是可以直接运行,库模块是依附于应用程序模块的。

接下来就是android闭包,compileSdkVersion为指定项目的编译版本。29是表示使用Android 10.0系统的SDK编译。buildToolsVersion,指定构建项目工具的版本。

defaultConfig里的applicationId,指定项目的包名,包名是唯一性,是应用的唯一标识。minSdkVersion指定最低的兼容的Android系统版本,targetSdkVersion则指定目前使用到最高的Android系统版本。versionCode指定项目版本号,versionName则指定项目版本名。

buildType里则是指定了项目生成安装文件的相关配置,其中可指定release和debug。debug表示生成的是测试版安装包,可以不写上去,而release则是指定正式版安装文件的。minifyEnabled表示是否使用混淆,而它的下一行则是设置使用的混淆文件。这里补充一点,凡是在Android Studio运行生成的都是测试版安装文件。正式版需Bild—Generate Signed Bundle/Apk里产生。

dependencies闭包里则指定了项目所有的依赖关系:本地依赖,库依赖和远程依赖。

本地依赖,对本地的jar包和目录添加依赖关系,implementationfileTree声明,将libs中的.jar文件都添加到构建目录中。

远程依赖,对jcenter仓库的上的开源项目添加依赖关系,也就是平时我们在github上添加的第三方开源库,也是直接implementation,先检查本地是否有缓存,没有就直接联网下载到构建路径。

库依赖,对项目中的库模块进行依赖,implementation project声明,通常格式为implementation project(‘:库名’)

来源地址:https://blog.csdn.net/qq_57260499/article/details/129491004

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯