表明这个应用准备尝试恢复所有的备份数据集合,甚至如果备份数据是比当前安装的应用高的编号存储的。
设置为true将允许备份管理者去尝试恢复当版本不匹配,意思是数据冲突。
要小心使用。默认为false。
- android:taskAffinity
提供给应用下所有组件的类同名称,除了设置了自己的taskAffinity属性的组件。
默认情况下所有的组件使用相同的affinity。
Affinity的名称和在< manifest />元素中设置的包名相同。
- android:theme
为应用下的组件定义一个引用自样式资源的主题。
个别的activities可以设置自己的主题,通过设置自己的theme属性。
- android:allowBackup
它表示是否允许应用程序参与备份。
如果将该属性设置为false,则即使备份整个系统,也不会执行这个应用程序的备份操作。
而整个系统备份能导致所有应用程序数据通过ADB来保存。
该属性必须是一个布尔值,或为true,或为false。
默认值为true。
- android:largeHeap
应用程序是否使用一个比较大的堆创建。
它是一个布尔值,在没有配置的情况下,它的默认值是false。
二、activity 标签属性
- android:allowTaskReparenting
-
android:allowTaskReparenting是一个任务调整属性。
-
它表明当这个任务重新被送到前台时,该应用程序所定义的Activity是否可以从被启动的任务中转移到有相同亲和力的任务中。
-
为什么在这里还要在提一次呢?因为它与< application />的 android:allowTaskReparenting 属性重叠,因此当为正在配置的Activity提供该属性的时候,它的默认值首先来自< application />节点。如果< application/>节点上没有配置该属性的时候,则false就是它的默认值。
-
通常,当一个Activity启动的时候,Activity管理服务就会为这个Activity生成一个任务并将此Activity与之相关联。在一个任务中可能存在多个Activity,它按照一定顺序排列在这个任务中,我们可以使用这个属性来强制它重新成为此任务的顶层Activity。在当前的任务不再显示时,也就是说,与此Activity相关联任务不在前台显示的时候,可以使用这个特性来强制Activity转移到与之有相同亲和力的任务(taskAffinity属性定义的任务)中。典型的用法是把一个应用程序的Activity移到另一个应用程序的主任务中。
-
例如,如果我们收到的一条短信(MMS应用程序)中包含一个电话号码文本,此时可以单击电话号码来启动拨号的快捷界面。但是,这个拨号界面是联系人应用程序的一个Activity,在这个场景下,它可能成为MMS应用程序启动的任务中的一个Activity,并位于该任务的顶层。如果它重新定位到联系人的任务中,则我们重新启动短信任务的时候就看不到这个拨号界面了。
-
Activity的亲和力是由taskAffinity属性定义的,Task的亲和力是通过读取当前任务根Activity的亲和力决定的。因此,根据定义,根Activity总是位于相同亲和力的任务里。由于在某些需求的要求下,一些Activity的启动模式(由launchModel属性定义)为singleTask和singleInstance,此类Activity只能位于任务的底部,因此,想要使用allowTaskReparenting属性来调整Activity所属任务,则启动默认只能限于”standard”和”singleTop”这两个模式。
- android:alwaysRetainTaskState
该属性表明该Activity所在任务的状态是否由系统保存。
如果是,则其值为true,如果配置为false,则表示在一定情况下Android将以初始状态启动该任务。
默认值是false。
-
注意,该属性仅对任务的根Activity起作用,其他的所有Activity都会被忽略。
-
当用户重新选择显示该任务的时候,系统在通常情况下将会清理掉任务中除了根Activity