安卓开发教程08:清单文件详解

221 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第8天,点击查看活动详情

上一篇文章中我们相信介绍了项目编译时的配置文件,那么我们现在来介绍一下,项目运行时的配置信息文件,系统在运行的时候会根据里面的内容来运行app的代码,显示界面。这个文件就是mainifests目录下的AndroidMainifest.xml。每一个模块都必须有一个并且文件名称不可以修改。

我们先来看一下 AndroidManifest.xml 文件都有哪些结构

image.png

我们看到,AndroidManifest.xml的根节点是manifest,它下面有application节点。 每一个manifest下面必须有一个application节点。这个标签声明了其组件和属性的信息。

application 节点的属性说明:

  • allowBackup: 为一个布尔类型变量,表示是否允许应用在刷机或者数据丢失之后恢复应用,也就是应用的备份。
  • dataExtractionRules:自动云备份的配置文件,(用于数据迁移);注意:该属性是冲android12 版本之后才引入的。
  • fullBackupContent:自动备份的配置文件,配置了需要自动备份的文件信息。
  • icon:用来指定app在手机中显示的图标
  • label:用来指定app在手机中显示的名称
  • roundIcon:用来指定app在手机中显示的圆角图标
  • supportsRtl:为一个布尔类型变量,如果系统语言是阿拉伯语或者波斯语(这两种语言的文字排列顺序是从右往左排列方式),是否支持这种排列方式。
  • theme:用来指定app的主题,(上篇文章中res-values-themes中定义的主题)
  • tools : targetApi : 上篇文章中minSdkVersion 我们配置的最低sdk版本,当我们的组件支持的最低版本大于我们指定的最低版本时,会产生相对于的警告信息,而这个数据就是帮我们忽略警告信息。

在application节点下有多个 activity 节点(也就是视图),只有在AndroidManifest.xml中 配置了activity 才可以访问该视图。

activity 节点的属性

  • name:可以理解为,设置对应java目录下的模块,用以处理视图页面中的逻辑关系
  • exported:为一个布尔值,表示是否可以被其他应用隐式调用。(默认值由 intent-filter来决定,有intent-filter 就是true 没有就是false)

activity 节点的节点

  • intent-filter 可以理解为这个节点在那个 activity节点内,那个节点就是app的默认页面
    • intent-filter -> action : 设置android.intent.action.Main 表示app启动后首先打开这个页面。
    • intent-filter -> category : 设置android.intent.category.LAUNCHER 表示手机屏幕上显示上面设置过的 app 的图标。

这些就是安卓项目中AndroidManifest.xml文件的简单配置项介绍,目前还只是简单的了解一些配置信息,在接下来的学习中我们慢慢了解更多的相关配置,以便于我们更加深入的了解和理解Android。