app目录结构

这个目录就是一个典型的Gradle项目,
其中build.gradle是该项目的构建文件;build目录存放该项目的构建结果;
libs目录存放该项目所依赖的第三方类库;
src是项目开发的重点,所有源代码和资源都放在该目录下。
查看build.gradle文件

当然现在gradle已经7.x了,和书上描述的就有些出入了。
这个指定了该构建文件应用的插件,所有的Android项目构建都需要使用com.android.application插件,除非你打算自己来完成所有的构建工作。
build.gradle文件的接下来部分则负责为项目定义全局属性:

构建文件的最后部分定义项目依赖

.gitignore是版本控制工具Git所需要的文件,用于列出哪些文件不需要接受Git的管理。一般来说,只有项目源文件和各种配置文件才需要接受Git的管理。
main目录下的 java目录、res目录(对应于标准的 Gradle项目叫作 resources目录)、AndroidManifest.xml文件是Android项目必需的。
java目录:保存java或kotlin源文件
res目录:res.目录:存放Android项目的各种资源文件。比如 layout子目录存放界面布局文件,values子目录存放各种 XML 格式的资源文件,如字符串资源文件strings.xml、颜色资源文件colors.xml、尺寸资源文件 dimens.xml;drawable子目录存放XML文件定义的 Drawable资源,如 drawable-ldpi、drawable-mdpi、drawable-hdpi、drawable-xhdpi、drawable-xxhdr等子目录分别用于存放低分辨率、中分辨率、高分辨率、超高分辨率、超超高分辨率的5种图片文件。
与drawable子目录对应的还有一个 mipmap子目录,这两个子目录都用于存放各Drawable资源。其区别在于: mipmap子目录用于保存应用程序启动图标及系统保留的Drawable资源;而drawable子目录则用于保存与项目相关的各种Drawable资源。
AndroidManifest.xml文件是 Android项目的系统清单文件,它用于控制Android应用的名称,图标、访问权限等整体属性。除此之外,Andriod应用的Activity、Service、ContentProvider、BroadcastReceiver这4大组件都需要在该文件中配置。

Android项目自动生成的Java类。
R.java文件是由AAPT工具根据应用中的资源文件自动生成的 → Android应用的资源字典。
生成规则:
Android应用的res目录是一个特殊的项目,该项目里存放了Android应用所用的全部资源,包括图片资源、字符串资源、颜色资源、尺寸资源等
Android按照约定,将不同的资源放在不同的文件夹内,这样可以方便地让AAPT 工具来扫描这些资源,并为它们生成对应的资源清单类:R.java。
在java代码中使用资源
R.string.xxxx
R.xxx.xxxx
在XML文件中使用资源
@<资源对应的内部类的类名>/<资源项的名称>
AndroidManifest.xml清单文件是每个Android项目所必需的,它是整个Android应用的全局描述文件。AndroidManifest.xml清单文件说明了该应用的名称、所使用的图标以及包含的组件等。

一个 Android应用可能需要权限才能调用Android系统的功能,因此它也需要声明调用自身所需要的权限。
通过为
Android系统的常用权限
官方文档
https://developer.android.google.cn/reference/android/Manifest.permission

可为程序本身声明权限。
Android系统的常用权限
官方文档
https://developer.android.google.cn/reference/android/Manifest.permission
[外链图片转存中…(img-25CwSfzt-1661041652760)]