<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 > 元素设置的包名称指定.

[android] AndroidManifest.xml - 【 manifest -> 其他次要配置】的更多相关文章

  1. [android] AndroidManifest.xml -【manifest】

    <manifest> 原文链接:http://www.android-doc.com/guide/topics/manifest/manifest-element.html 最早引入的AP ...

  2. Android AndroidManifest.xml配置文件

    AndroidManifest.xml配置文件介绍本质:AndroidManifest.xml是整个应用的主配置清单文件.包含:该应用的包名.版本号.组件.权限等信息.作用:记录该应用的相关配置信息. ...

  3. android AndroidManifest.xml 属性详细解析

    一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activiti ...

  4. Android AndroidManifest.xml详解

    AndroidManifest.xml简述: AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activitie ...

  5. [android] AndroidManifest.xml 详解

    第1部分 标签库+包路径+版本控制 <manifest xmlns:android="http://schemas.android.com/apk/res/android" ...

  6. [android] AndroidManifest.xml - 【 manifest -> Application -> activity 】

    <activity android:allowTaskReparenting=["true" | "false"] android:alwaysRetai ...

  7. [android] AndroidManifest.xml - 【 manifest -> application】

    语法: <application android:allowTaskReparenting=["true" | "false"] android:back ...

  8. [android] AndroidManifest.xml - 【 manifest -> permission】

    在  API Level 1 时被引入 语法: <permission android:description="string resource" android:icon= ...

  9. [android] AndroidManifest.xml【 manifest -> uses-permission】

    在  API Level 1 时被引入 简介: 在某些情况下,你为app设置的权限将会影响到google应用商店会用何种规则来过滤你的APP. 如果你需要一个硬件相关的权限——CAMERA,googl ...

随机推荐

  1. HDU4626+博弈

    博弈... /* 博弈 对于当前人来说,如果完成自己的操作后,若mat[n][m]==0,则自己是胜者. 因为 如果mat其他位置不存在1了,肯定自己胜:如果存在1,则让下一位去反转那个1. */ # ...

  2. iphone系统更新 3002错误

    一:错误原因 与苹果服务器通信连接错误 二:解决 windows下:c:/windows/system32/drivers/etc 修改里面的hosts文件 去掉和apple.com相关的 三:ios ...

  3. 取石子 (四)_nyoj_161(博弈-奇异矩阵).java

    取石子 (四) 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4   描述 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是 ...

  4. Failed to initialize storage module: user 的解决方式

    网上提供了一种解决方法就是在session_start()前把session的存储方式改为files,即加入以下一句代码 if (ini_get('session.save_handler') !== ...

  5. Linux cmp命令——比较二进制文件(转)

    Linux cmp命令用于比较两个文件是否有差异. 当相互比较的两个文件完全一样时,则该指令不会显示任何信息.若发现有所差异,预设会标示出第一个不同之处的字符和列数编号.若不指定任何文件名称或是所给予 ...

  6. UIScrollView 循环滚动,代码超简单

    如今非常多应用里面多多少少都用到了循环滚动,要么是图片.要么是view,或者是其它,我总结一下,写了个demo分享给大家. 先看代码之后在讲原理: 1.创建一个空的项目(这个我就不多说了). 2.加入 ...

  7. Windows2008 R2下,应用程序池 'XXXXXXXX' 被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误。

    转:http://www.cnblogs.com/freeton/archive/2012/08/28/2660585.html http://www.hack001.com/post/151

  8. C#:XML操作(简单)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...

  9. ecshop的数据库getRow、getAll、getOne区别

    ECShop没有使用一些开源的数据库操作类,比如adodb或者PEAR,而是封装了自己的实现.这样做的好处是实现非常轻量,大大减小了分发包的文件大小.另外,当网站需要做memcached缓存时,也可以 ...

  10. unity, 导出对象到另一个项目

    ----更新(2015-6-26): 今天又试了一下,有时候prefabs不用导出直接拷贝过去也能用,但有时候不行.还不太清楚原因. ----旧帖: 一,正确做法: 一个对象包括资源和Hierarch ...