我是靠谱客的博主 整齐航空,最近开发中收集的这篇文章主要介绍Android学习笔记 1.6 Android应用结构分析,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Android学习笔记

疯狂Android讲义

文章目录

    • Android学习笔记
      • 疯狂Android讲义
      • 第1章 Android 应用和开发环境
        • 1.6 Android应用结构分析
          • 1.6.1 Android项目结构分析
          • 1.6.2 自动生成的Java类
          • 1.6.3 res目录说明
          • 1.6.4 Android应用的清单文件:AndroidManifest.xml
          • 1.6.5 应用程序权限说明

第1章 Android 应用和开发环境

1.6 Android应用结构分析

1.6.1 Android项目结构分析

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大组件都需要在该文件中配置。

1.6.2 自动生成的Java类

在这里插入图片描述

Android项目自动生成的Java类。

R.java文件是由AAPT工具根据应用中的资源文件自动生成的 → Android应用的资源字典。

生成规则:

  • 每类资源都对应于R类的一个内部类。比如所有界面布局资源对应于layout内部类;所有字符串资源对应于string内部类;所有标识符资源对应于id内部类。
  • 每个具体的资源项都对应于内部类的一个public static final int类型的字段。例如,前面在界面布局文件中用到了show标识符,因此R.id类里就包含了这个字段;由于mipmap-xxX文件夹里包含了ic_launcher.png 图片,因此R.mipmap类里就包含了ic_launcher字段。
1.6.3 res目录说明

Android应用的res目录是一个特殊的项目,该项目里存放了Android应用所用的全部资源,包括图片资源、字符串资源、颜色资源、尺寸资源等

Android按照约定,将不同的资源放在不同的文件夹内,这样可以方便地让AAPT 工具来扫描这些资源,并为它们生成对应的资源清单类:R.java。

  1. 在java代码中使用资源

    R.string.xxxx
    R.xxx.xxxx
    
  2. 在XML文件中使用资源

    @<资源对应的内部类的类名>/<资源项的名称>
    
1.6.4 Android应用的清单文件:AndroidManifest.xml

AndroidManifest.xml清单文件是每个Android项目所必需的,它是整个Android应用的全局描述文件。AndroidManifest.xml清单文件说明了该应用的名称、所使用的图标以及包含的组件等。

  • 应用程序的包名,该包名将会作为该应用的唯一标识。
  • 应用程序所包含的组件,如 Activity、Service、BroadcastReceiver和 ContentProvider
  • 应用程序兼容的最低版本。
  • 应用程序使用系统所需的权限声明。
  • 其他程序访问该程序所需的权限声明。

在这里插入图片描述

  • android:label=“@string app_name”,这说明该应用的标签(Label)为 appIsrcmainreslvalue目录下strings.xml文件中名为“ app name”的字符串值。
  • androidicon=“@mipmap/ic_launcher”,这说明该应用的图标为 appIsrclmainIreslxxx-mipmap目录下主文件名为“ic _launcher”的图片。
1.6.5 应用程序权限说明

一个 Android应用可能需要权限才能调用Android系统的功能,因此它也需要声明调用自身所需要的权限。

通过为<manifest.…./>元素添加<uses-permission…/>子元素即可为程序本身声明权限。

Android系统的常用权限

官方文档

https://developer.android.google.cn/reference/android/Manifest.permission

在这里插入图片描述

可为程序本身声明权限。

Android系统的常用权限

官方文档

https://developer.android.google.cn/reference/android/Manifest.permission

[外链图片转存中…(img-25CwSfzt-1661041652760)]

最后

以上就是整齐航空为你收集整理的Android学习笔记 1.6 Android应用结构分析的全部内容,希望文章能够帮你解决Android学习笔记 1.6 Android应用结构分析所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部