Android Studio 为项目提供了几种不同的显示方式, 可以在下图选择不同的显示方式:

AndroidManifest.xml 应用清单

AndroidManifest.xml 是应用程序的清单,该文件列出了 App 都有些什么内容。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.zsf90.emptyactivity">

<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.EmptyActivity"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true"> // 广播接收器是否可以接收来自其应用外部来源的消息 。如果可以,则为true,如果不可以,则为false。如果为false,则广播接收器只能接收由同一应用或具有相同用户 ID 的应用的组件发送的消息。
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

</manifest>

根元素 <manifest>

该元素是这个文档中所有子元素的根,该元素有一下属性:

xmlns:android

xmlns:android="http://schemas.android.com/apk/res/android"

package

包名也代表着唯一的application ID,用来发布应用。包名由英文字母(大小写均可)、数字和下划线组成。每个独立的名字必须以字母开头。

android:versionCode=”1”

内部的版本号。用来表明哪个版本更新。这个数字不会显示给用户。显示给用户的是versionName。这个数字必须是整数。不能用16进制,也就是说不接受0x1这种参数

Application 子元素

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.EmptyActivity"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

应用的声明。此元素包含用于声明每个应用组件的子元素,并且具有会影响所有组件的属性。其中许多属性(如 icon、label、permission、process、taskAffinity 和 allowTaskReparenting)会为组件元素的相应属性设置默认值。其他属性(如 debuggable、enabled、description 和 allowClearUserData)则为整个应用设置值,并且不能被组件替换。

android:allowBackup

是否允许应用参与备份和恢复基础架构。如果将此属性设为 false,则永远不会为该应用执行备份或恢复,即使是采用全系统备份方法也不例外(这种备份方法通常会通过 adb 保存所有应用数据)。此属性的默认值为 true

android:dataExtractionRules

android:fullBackupContent

android:icon

整个应用的图标,以及每个应用组件的默认图标。

android:label

整个应用的用户可读标签,以及每个应用组件的默认标签。

android:roundIcon

android:supportsRtl

声明您的应用是否愿意支持从右到左 (RTL) 布局。如果设为 true 并且 targetSdkVersion 设为 17 或更高版本,则系统会激活和使用各种 RTL API,以便您的应用可以显示 RTL布局。

如果设为false或者如果 targetSdkVersion设为 16或更低版本,则 RTL API 将被忽略或不起作用,无论与用户所选语言区域关联的布局方向为何(布局始终是从左到右),应用的行为都相同。此属性的默认值为false

android:theme

对样式资源的引用,用于为应用中的所有Activity定义默认主题背景。各个Activity可以通过设置自己的 theme 属性来替换默认值。

tools:targetApi