Android Manifest之<application>元素中文注释
语法
<application android:allowTaskReparenting=["true" | "false"]
android:backupAgent="string"
android:debuggable=["true" | "false"]
android:description="string resource"
android:enabled=["true"| "false"]
android:hasCode=["true"| "false"]
android:hardwareAccelerated=["true"| "false"]
android:icon="drawable resource"
android:killAfterRestore=["true" | "false"]
android:largeHeap=["true" | "false"]
android:label="string resource"
android:logo="drawable resource"
android:manageSpaceActivity="string"
android:name="string"
android:permission="string"
android:persistent=["true" | "false"]
android:process="string"
android:restoreAnyVersion=["true" | "false"]
android:supportsRtl=["true" | "false"]
android:taskAffinity="string"
android:theme="resource or theme"
android:uiOptions=["none" | "splitActionBarWhenNarrow"]>
.. .
</application>
父元素
<manifest>
子元素
<activity>
<activity-alias>
<service>
<receiver>
<provider>
<uses-library>
描述
定义这个应用。这个元素包含定义了每个应用组件的子元素,拥有能影响所有应用组件的属性。这些属性中的大部分(如icon, label, permission,process, taskAffinity, 和allowTaskReparenting)都对特定组件元素的对应属性设置默认值。其它属性(如debuggable, enabled,description, 和allowClearUserData)是对这个应用整体进行设置,这些属性不能被具体的组件重写。
属性
android:allowTaskReparenting
这个应用定义的activities是否能从启动它们的task移动到和它们有关联的task(当接下来这个task到前台的时候)-如果“true”,则能移动,否则它们必须和启动它们的任务待到一起-“false”。默认值是“false”。
<activity>元素有它自己的能重写这个属性值的android:allowTaskReparenting属性。更多内容参见这个属性。
android:backupAgent
实现应用backup agent的类的名称,这个类是BackupAgent的子类。这个属性值应该是完整的类名(例如,“com.example.project.MyBackupAgent”)。然而,有一个简写,如果这个名称的第一个字母是点(例如,“.MyBackupAgent”),那么它会追加到在<manifest>元素中定义的包名的后面。
这个属性没有默认值,必须指定。
android:debuggable
是否这个应用可调式,即使用用户模式在设备上运行时-如果可以,则为“true”,否则为“false”。默认值是“false”。
android:description
这个应用的用户可读文本,同应用的label相比,它有更多或更长的叙述性内容。这个值必须通过string资源的引用来指定。和label不同的是,它不能为raw串。没有默认值。
android:enabled
是否android系统能初始这个应用的组件-如果能,则为“true”;否则为“false”。如果这个值是“true”,那么每个组件自身的enabled属性能决定这个组件是否enabled。如果这个值是“false”,它会重写指定组件的值;所有的组件都是disabled的。
默认值是“true”。
android:hasCode
是否这个应用包含代码-如果包含,则为“true”,否则为“false”。当它的值为“false”时,在运行组件时系统就不会设法装载任何应用代码。默认值是“true”。
如果它只是使用内置组件类,那么应用自身就不会有任何代码。例如,使用了AliasActivity类的activity,这种情况很少发生。
android:hardwareAccelerated
是否对所有的activity和这个应用中所有的视图启用硬件加速功能-如果应该启用,则为“true”,否则为“false”。
如果你已经设置minSdkVersion或targetSdkVersion到“14”或者更高,那么这个值为“true”;否则,它的值为“false”。
从Android3.0(API Level 11)开始,硬件加速渲染器就对应用可用,这个功能主要用来提升大部分通用2D图形操作的执行性能。当这个渲染器启用时,大部分Canvas,Paint,Xfermode,ColorFilter,Shader和Camera的操作就会加速。总的来说,这就会产生平滑的动画、平滑的滚动以及提升响应速度,甚至对那些没有明确说明使用框架的OpenGL 库的应用都有效。
需要注意的是,并非所有的OpenGL 2D操作都会加速。如果你启用了硬件加速器,你需要测试你的应用以保证它能正确无误的使用渲染器。
关于这方面的更多信息,参见Hardware Acceleration向导。
android:icon
这个应用的图标,同时也是这个应用的每个组件的默认图标。参见<activity>、<activity-alias>、<service>、<receiver>和<provider>组件的各自的独立icon属性。
这个属性必须设置为包含图片的drawable资源的引用(例如:“@drawable/icon”)。没有默认的图标。
android:killAfterRestore
在出现问题时,这个应用是否在完整的系统恢复操作已经完成后停止。单包恢复操作绝对不会导致这个应用会被关掉。
一般来说,当这个电话在安装时,全系统恢复操作只会出现一次。第三方应用一般不会用这个属性。
默认值是true,意味着在全系统恢复操作期间这个应用已经完成操作后,它将会停止。
android:largeHeap
是否你应用的进程应当在更大的Dalvik堆中创建。这会应用到创建这个应用的所有进程。如果你使用共享的用户ID来允许多个应用使用同一个进程,则它只会应用到第一个装载到进程中的应用,同时它们必须全部使用这个选项,否则将会出现不可预知的结果。
大部分应用都不需要这样做,而是把焦点关注在如何减少它们内存使心率来提升性能。由于某些设备还依赖于它整体的内存大小,所以启用这项也不能保证安装时可用内存会增加。
为了在运行时查看可用内存,可以使用getMemoryClass()或getLargeMemoryClass()方法。
android:label
统一地用户可读的应用标签,同时也是每个应用组件的默认标签。参见<activity>、<activity-alias>、<service>、<receiver>和<provider>组件的
补充:移动开发 , Android ,