`

AndroidManifest.xml文件详解(supports-gl-texture)

 
阅读更多

语法(SYNTAX):

<supports-gl-textureandroid:name="string"/>

被包含于(CONTAINED IN):

<manifest>

说明(DESCRIPTION):

这个元素用于声明一个应用程序所支持的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" />

被声明的<supports-gl-texture>是一种信息,这就意味着应用程序在安装时,系统本身并不检查这个元素,以确保与设备的支持相匹配。但是,其他的服务(如Google Play)或应用程序能够检查你的应用程序的<supports-gl-texture>的声明,把它作为与你的应用程序进行交互和处理的一部分。由于这个原因,在你的应用程序中声明所有支持的纹理压缩格式的能力是至关重要的。

通常,应用程序和设备会使用相同的已知的字符串(如下表所示)来声明它们所支持的纹理压缩格式。下表中的格式字符串会根据需要随着时间来增长,并且因为值是字符串,所有应用程序可根据需要自由的声明其他的格式。

假设应用程序是建立在SDK平台工具r3或更高的版本上,那么基于<supports-gl-texture>元素的过滤对所有的API级别都是有效的。

属性(ATTRIBUTES):

android:name

这个属性用描述字符串给指定一个由应用程序支持的一个GL纹理压缩格式,通用的描述符的值在下表中被列出。

纹理压缩格式描述符

注释

GL_OES_compressed_ETC1_RGB8_texture

爱立信纹理压缩。在OpenGL ES2.0中被指定,并且在所有支持OpenGL ES2.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

亮度的透明度纹理压缩。

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_EXT_texture_compression_pvrtc

PowerVR纹理压缩。在运行PowerVr SGX530/540 GPU的设备中有效。如Motorola的DRIOID系列,Samsung Galaxy S,Nexus S,和Galaxy Tab等。

Google Play和纹理压缩过滤

Google Play对应用程序的过滤,对用户来说是可见的,以便用户能够看到并只下载那些跟设备兼容的应用程序。它过滤应用程序的方法之一就是通过纹理压缩的兼容性,它会基于GPU的能力来控制应用程序在各种设备上的可用性。

Google Play会通过以下内容的比较,来判断应用程序的纹理压缩与用户设备的兼容性:

1.应用程序支持的纹理压缩格式---应用程序会在它的清单文件的<supports-gl-texture>元素中声明它所支持的纹理压缩格式;

2.设备上GPU所支持的纹理压缩格式---设备会把作为它所支持的只读系统属性来报告。

每次把应用程序发布到Google Play的发布网站上时,Google Play会扫描该应用程序的清单文件,并查看<supports-gl-texture>元素,它从这个元素中提取格式描述符,并把它作为跟应用程序的.apk和版本关联的内部元数据来保存。

如果应用程序所支持的任何一种纹理压缩格式也是设备所支持的,那么Google Play就允许用户看到这个应用程序并可下载它。否则,如果应用程序所支持的格式都不被设备所支持,那么Google Play就会过滤掉这些应用程序,使其不能下载。

如果应用程序没有声明任何<supports-gl-texture>元素,那么Google Play不会使用任何基于纹理压缩格式的过滤。

分享到:
评论

相关推荐

    Android教程之AndroidManifest.xml文件详细介绍及用法解析

    Android教程之AndroidManifest.xml文件 详细介绍及用法解析

    AndroidManifest.xml反编译工具

    5. 打开生成的XML文件,你就可以看到易于阅读和理解的`AndroidManifest.xml`内容了。 另外,压缩包中的"AXMLPrinter2使用说明.txt"可能包含了更详细的使用指南,而"西西软件园.txt"和"西西软件园_游戏网下载_最安全...

    AndroidManifest.xml文件详解

    ### AndroidManifest.xml 文件详解 #### 一、关于 AndroidManifest.xml `AndroidManifest.xml` 是 Android 应用程序中不可或缺的一部分,通常位于项目的根目录下。该文件定义了应用程序的架构和元数据,包括应用...

    二进制AndroidManifest.xml修改神器~

    在Android应用开发中,`AndroidManifest.xml`是一个至关重要的文件,它定义了应用程序的基本属性、权限、组件(如Activity、Service、BroadcastReceiver和ContentProvider)以及它们之间的关系。本资源,"二进制...

    提取apk文件中的AndroidManifest.XML

    Android反编译工具是用来解析和反编译APK文件的,它可以将APK的二进制资源转换为可读的源代码和XML文件。Apktool是一款流行的Android反编译工具,它支持对APK进行拆解、修改和重新打包。通过Apktool,我们可以轻松地...

    APK AndroidManifest.xml 解密工具

    一个解密apk 包中AndroidManifest.xml 的工具,命令行直接使用,生成一个明文的xml 文件。 AndroidManifestConver.exe c:\src.xml c:\dest.xml

    AndroidManifest.xml信息查看工具

    在Android应用开发中,`AndroidManifest.xml`是一个至关重要的文件,它定义了应用程序的基本属性、权限、组件(如活动、服务、广播接收器和内容提供者)以及它们之间的关系。这款名为“AndroidManifest.xml信息查看...

    Android 报错:Entry name ‘AndroidManifest.xml’ collided

    Android 报错:Entry name ‘AndroidManifest.xml’ collided前言解决方法1、直接退回3.5.32、排除打包文件3、使用旧打包工具4、最终解决方法完事 前言 这两天 Android studio 更新了 3.6 版本,天天在右下角提示 ...

    AndroidManifest.xml文件剖析.pdf

    AndroidManifest.xml文件剖析 AndroidManifest.xml文件是Android应用程序的全局配置文件,它是Android应用程序中最重要的配置文件之一。该文件用于描述应用程序的基本信息、组件信息、权限信息、IntentFILTER信息等...

    AndroidManifest.xml文件详解.ppt

    AndroidManifest.xml可以理解为android的一个注册表文件,在这个文件中,我们可以声明我们自己定义的权限,这个工程被赋予的权限已经所有应用组件的相关配置工作。Manifest, 描述:根节点,用来描述.apk文件,...

    AndroidManifest.xml文件

    上次传的main activity代码配套,欢迎页面太丑没穿,好吧,就这样。

    androidmanifest.xml详解

    详细阐述androidmanifest.xml各个属性的含义和用法

    Androidmanifest.xml文件分析

    AndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的...

    AndroidManifest.xml中含盖的安全问题详解

    AndroidManifest.xml 中含盖的安全问题详解 AndroidManifest.xml 是每个 Android 程序中必须的文件,它位于整个项目的根目录,提供了应用程序到 Android 系统的基本信息,系统必须具有该信息才能运行任何应用程序的...

    AndroidManifest.xml编译器

    在Android应用开发中,`AndroidManifest.xml`是一个至关...开发者应确保所有必需的组件和服务都在XML文件中声明,并正确配置权限,以避免运行时错误。同时,了解编译原理有助于更好地控制应用的资源管理和版本升级。

    修改二进制文件AndroidManifest.xml文件

    android反编译:修改apk生成的二进制文件AndroidManifest.xml文件。

    Android学习笔记之AndroidManifest.xml文件解析

    ### AndroidManifest.xml 文件解析知识点 #### 一、概述 `AndroidManifest.xml` 是 Android 应用的核心配置文件,它位于应用项目的根目录下。该文件主要用于描述应用的基本信息及其组件,比如 Activity、Service、...

Global site tag (gtag.js) - Google Analytics