AndroidManifest.xml - 【 manifest -> 其他次要配置】

<uses-sdk> 

作用:使应用程序的兼容性更好,指明应用程序需要的最小API,编译API以及最大支持的API。值都是整数
<uses-sdk android:minSdkVersion="integer"
          android:targetSdkVersion="integer"
          android:maxSdkVersion="integer" />
android:minSdkVersion  ——>  指定运行应用程序所需的最低API级别。如果系统的应用程序的接口低于此属性中指定的值,则将防止用户安装应用程序。如果你不声明这个属性,系统默认值为“1”,这表明你的应用程序是兼容所有版本的安卓系统。
android:targetSdkVersion ——> 一个整数表示的应用程序的目标API级别。如果没有设置,默认值等于给定的例子。此属性通知系统,您已经对目标版本进行了测试,系统不应该允许任何兼容的行为,以保持您的应用程序的向前兼容。
android:maxSdkVersion ——> 若应用程序的maxSdkVersion属性低于系统自身使用的API级别,则系统将不允许应用程序被安装。在系统更新后重新验证的情况下,有效地从设备中删除您的应用程序。因此,不建议声明该属性。
<uses-configuration>
<uses-configuration android:reqFiveWayNav=["true" | "false"] 是否需要五向导航【上/下/左/右/当前】
                    android:reqHardKeyboard=["true" | "false"]是否需要硬件的键盘
                    android:reqKeyboardType=["undefined" | "nokeys" | "qwerty" | "twelvekey"]设置键盘的类型
                    android:reqNavigation=["undefined" | "nonav" | "dpad" | "trackball" | "wheel"]设置导航的类型
                    android:reqTouchScreen=["undefined" | "notouch" | "stylus" | "finger"] />设置触摸屏幕的类型

<uses-feature> 

Android Market会根据应用定义的uses-feature过滤掉设备不支持的所有应用。

通过使用<uses-feature>元素,一个应用可以指定它所支持的硬件型号。举个例子,有些设备不支持多点触控或者OpenGL ES 2.0,那么过滤器就会过滤需要这些硬件支持(多点触控或者OpenGL ES 2.0)的应用,用户就不会在android market上看到这些应用。

<uses-feature android:name="string"
              android:required=["true" | "false"]
              android:glEsVersion="integer" />

name属性指定了应用的特征,required属性告诉过滤器我们是否在任何情况下必须要需要这个设备的支持,或者仅仅只是“nice to have”。

最后一个属性是可选择的,只是用在需要指定一个OpenGL ES版本的时候。

例如:我们可以使用 <uses-feature>元素来剔除所有不支持多点触控的设备,就像下面这样:

<uses-feature android:name="android.hardware.touchscreen.multitouch" android:required="true"/>

再例如:如果你的游戏需要更强大的图形处理能力,我们可以指定OpenGL ES 2.0,然后我们的游戏只会被支持OpenGL ES 2.0的设备所看见。

<uses-feature android:glEsVersion="0x00020000" required="true"/>

<supports-screens>
<supports-screens android:resizeable=["true"| "false"]
                  android:smallScreens=["true" | "false"]
                  android:normalScreens=["true" | "false"]
                  android:largeScreens=["true" | "false"]
                  android:xlargeScreens=["true" | "false"]
                  android:anyDensity=["true" | "false"]
                  android:requiresSmallestWidthDp="integer"
                  android:compatibleWidthLimitDp="integer"
                  android:largestWidthLimitDp="integer"/>
这个元素用于指定应用程序所支持的屏幕尺寸,并针对比应用程序所支持的屏幕还要大屏幕,启用屏幕兼容模式
<compatible-screens>
<compatible-screens>
    <screen android:screenSize=["small" | "normal" | "large" | "xlarge"]
            android:screenDensity=["ldpi" | "mdpi" | "hdpi" | "xhdpi"] />
    ...
</compatible-screens>

这个元素用于指定那些屏幕配置跟应用程序是兼容的。在应用的清单中只允许有一个<compatible-screent>元素的实例,但是它能够包含多个<screen>元素。每个<screen>元素指定一个特定的跟应用程序兼容的尺寸---密度组合。Android系统不会读取<compatible-screen>清单元素(无论是在安装的时候,还是在运行的时候)。这个元素的信息只能被外部服务使用(如Google Play),以便使其能够更好的理解应用程序跟指定屏幕配置的兼容性。

<supports-gl-texture>
<supports-gl-texture android:name="string" />

声明本应用程序支持的一种 GL 纹理压缩格式。所谓应用程序“支持”的 GL 纹理压缩格式,是指该应用程序安装到某设备之后就能够提供以这种格式压缩的纹理数据。 应用程序可以由 .apk 文件提供本地的压缩数据,也可以在运行时从服务器下载数据。

每个 < supports-gl-texture > 元素只能声明一种所支持的纹理压缩格式, 这通过 android:name 属性值进行指定。 如果应用程序支持多种纹理压缩格式,可以声明多个 < supports-gl-texture > 元素。例如:

< supports-gl-texture android:name="GL_OES_compressed_ETC1_RGB8_texture" / > < supports-gl-texture android:name="GL_OES_compressed_paletted_texture" / > 
纹理压缩格式描述符 说明
GL_OES_compressed_ETC1_RGB8_texture Ericsson 纹理压缩。在 OpenGL ES 2.0 中定义,适用于所有支持 OpenGL ES 2.0 的 Android 平台设备。
GL_OES_compressed_paletted_texture 通用的带调色板的纹理压缩。
GL_AMD_compressed_3DC_texture ATI 3Dc 纹理压缩。
GL_AMD_compressed_ATC_texture ATI 纹理压缩。适用于运行 Adreno GPU 的设备,包括 HTC Nexus One、Droid Incredible、EVO 等等。 为了保证最大的兼容性,设备还可以用GL_ATI_texture_compression_atitc 描述符来声明 < supports-gl-texture > 元素。
GL_EXT_texture_compression_latc Luminance alpha 纹理压缩。
GL_EXT_texture_compression_dxt1 S3 DXT1 纹理压缩。适用于 Nvidia Tegra2 平台的设备,包括 Motorala Xoom、Motorola Atrix、Droid Bionic 等等。
GL_EXT_texture_compression_s3tc S3 纹理压缩,但不支持 DXT 变体。 适用于 Nvidia Tegra2 平台的设备,包括Motorala Xoom、Motorola Atrix、Droid Bionic 等等。 如果应用程序需要 DXT 变体,请换用上一条描述符进行声明。
GL_IMG_texture_compression_pvrtc PowerVR 纹理压缩。 适用于带有 PowerVR SGX530/540 GPU 的设备,比如 Motorola DROID 系列;Samsung Galaxy S、Nexus S 和 Galaxy Tab 等等。

<instrumentation>
<instrumentation android:functionalTest=["true" | "false"]
                 android:handleProfiling=["true" | "false"]
                 android:icon="drawable resource"
                 android:label="string resource"
                 android:name="string"
                 android:targetPackage="string" />
声明一个 Instrumentation 类, 用于监视应用程序与系统之间的交互。 Instrumentation 对象将在所有应用程序组件之前被实例化。

属性:
android:functionalTest
Instrumentation 类是否要作为功能性测试来运行 — “true”表示是,“false”表示否。 默认值是“false”。
android:handleProfiling
Instrumentation 对象是否能够开启和关闭性能分析功能(profiling) —  “true”表示它可以自行决定何时启动和停止,“false”表示整个运行期间都将持续开启。 设为“true”使得 Instrumentation 对象可以只针对某些操作进行性能分析。 默认值是“false”。
android:icon
代表 Instrumentation 类的图标。这个属性必须设为 drawable 资源。
android:label
供用户阅读的代表 Instrumentation 类的文本标签。可直接设为字符串,也可设为对字符串资源的引用。
android:name
Instrumentation 子类的名称。 应设为完全限定格式的类名称(比如“com.example.project.StringInstrumentation”)。 不过作为简称,如果类名的首字符是句点,则< manifest > 元素中设置的包名将会自动添加到前面。没有默认值,类名必须指定。
android:targetPackage
运行 Instrumentation 对象对应的应用程序。 应用程序由其 Manifest 文件中 < manifest > 元素设置的包名称指定.
时间: 2024-10-07 04:13:39

AndroidManifest.xml - 【 manifest -> 其他次要配置】的相关文章

学习Android之-----------------------AndroidManifest.xml

在Android中,有一个文件叫AndroidManifest.xml ,该文件是Android项目开发的全局配置文件, 以.xml结尾.熟悉java web开发的朋友可能都知道,在Web工程中,也有一个全局的配置文件,叫web.xml. 当然AndroidManifest.xml 与 web.xml 是类似的,我们都可以在文件中配置有关项目的相关配置(如初始 化变量设置,Android Activity配置,servlet配置等等). 总的来说,开发Android应用所有需要配置的都需要在 A

关于QT for Android生成的AndroidManifest.xml学习说明

<?xml version="1.0"?> <manifest package="org.qtproject.example" xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="1.0" android:versionCode="1" android:installLocation

AndroidManifest.xml配置

AndroidManifest.xml配置文件对于Android应用开发来说是非常重要的基础知识,本文旨在总结该配置文件中重点的用法,以便日后查阅.下面是一个标准的AndroidManifest.xml文件样例.     [html] view plaincopy <?xml version="1.0" encoding="utf-8"?> <manifest> <!-- 基本配置 --> <uses-permission 

AndroidManifest.xml以及manifest节点

参考资料:http://developer.android.com/guide/topics/manifest/manifest-intro.htmlhttp://developer.android.com/guide/topics/manifest/manifest-element.html 每个Android应用程序工程根目录必须有一个AndroidManifest.xml文件.这个文件包含着应用程序在Android系统中的配置信息.在程序被安装时这些信息会被系统读取,并被合理的安装.这些信

AndroidManifest.xml配置文件详解 (转)

AndroidManifest.xml配置文件对于Android应用开发来说是非常重要的基础知识,本文旨在总结该配置文件中重点的用法,以便日后查阅.下面是一个标准的AndroidManifest.xml文件样例. [html] view plaincopy <?xml version="1.0" encoding="utf-8"?> <manifest> <!-- 基本配置 --> <uses-permission />

Android Androidmanifest.xml详解(转)

一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置. 除了能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试)

android基础知识13:AndroidManifest.xml文件解析

1.重要性 AndroidManifest.xml是Android应用程序中最重要的文件之一.它是Android程序的全局配置文件,是每个 android程序中必须的文件.它位于我们开发的应用程序的根目录下,描述了package中的全局数据,包括package中暴露的组件 (activities, services, 等等),以及他们各自的实现类,各种能被处理的数据和启动位置等重要信息. 因此,该文件提供了Android系统所需要的关于该应用程序的必要信息,即在该应用程序的任何代码运行之前系统所

AndroidManifest.xml文件安全探索

secbang.comsimeon 最近在做一些apk的安全检测,对AndroidManifest.xml文件进行了研究和探讨,介绍AndroidManifest.xml文件的作用和架构,并研究了AndroidManifest.xml配置文件存在的一些漏洞,在进行安全检测时,可以对症下药. 0X00 AndroidManifest.xml文件作用 AndroidManifest.xml文件的作用非常重要,应该说是缺一不可.在android官方介绍文档中(https://developer.and

关于AndroidManifest.xml的结构介绍

一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置. 除了能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试)