diff options
Diffstat (limited to 'docs/html/guide/topics/manifest/supports-gl-texture-element.jd')
-rw-r--r-- | docs/html/guide/topics/manifest/supports-gl-texture-element.jd | 187 |
1 files changed, 187 insertions, 0 deletions
diff --git a/docs/html/guide/topics/manifest/supports-gl-texture-element.jd b/docs/html/guide/topics/manifest/supports-gl-texture-element.jd new file mode 100644 index 0000000..2b9f06e --- /dev/null +++ b/docs/html/guide/topics/manifest/supports-gl-texture-element.jd @@ -0,0 +1,187 @@ +page.title=<supports-gl-texture> +@jd:body + +<dl class="xml"> + +<dt>syntax:</dt> +<dd> +<pre class="stx"> +<supports-gl-texture android:<a href="#name">name</a>="<em>string</em>" /> +</pre> +</dd> + +<dt>contained in:</dt> +<dd><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html"><manifest></a></code></dd> + + <div class="sidebox-wrapper"> + <img id="rule" src="{@docRoot}assets/images/grad-rule-qv.png"> + <div id="qv-sub-rule"> + <img src="{@docRoot}assets/images/icon_market.jpg" + style="float:left;margin:0;padding:0;"> + <p style="color:#669999;">Android Market and <code + style="color:#669999;"><supports-gl-texture></code> elements</p> + <p style="margin-top:1em;">Android Market filters applications according + to the texture compression formats that they support, to ensure that + they can be installed only on devices that can handle their textures + properly. Developers can use texture compression filtering + as a way of targeting specific device types, based on GPU platform.</p> + + <p style="margin-top:1em;" class="caution">For important information about how + Android Market uses <code><supports-gl-texture></code> elements as + the basis for filtering, please read <a href="#market-texture-filtering">Android + Market and texture compression filtering</a>, below.</p> +</div> +</div> + +<dt>description:</dt> +<dd>Declares a single GL texture compression format that is supported by +the application. + +<p>An application "supports" a GL texture compression format if it is capable of +providing texture assets that are compressed in that format, once the +application is installed on a device. The application can provide the +compressed assets locally, from inside the <code>.apk</code>, or it can download them +from a server at runtime.</p> + +<p>Each <code><supports-gl-texture></code> element declares exactly one +supported texture compression format, specified as the value of a +<code>android:name</code> attribute. If your application supports multiple +texture compression formats, you can declare multiple +<code><supports-gl-texture></code> elements. For example:</p> + +<pre><supports-gl-texture android:name="GL_OES_compressed_ETC1_RGB8_texture" /> +<supports-gl-texture android:name="GL_OES_compressed_paletted_texture" /></pre> + +<p>Declared <code><supports-gl-texture></code> elements are informational, +meaning that the Android system itself does not examine the elements at install +time to ensure matching support on the device. However, other services +(such as Android Market) or applications can check your application's +<code><supports-gl-texture></code> declarations as part of handling or +interacting with your application. For this reason, it's very important that +you declare all of the texture compression formats (from the list below) that +your application is capable of supporting. </p> + +<p>Applications and devices typically declare their supported GL texture +compression formats using the same set of well-known strings, as listed below. +The set of format strings may grow over time, as needed, and since the values +are strings, applications are free to declare other formats as needed.</p> + +<p>Assuming that the application is built with SDK Platform Tools r3 or higher, +filtering based on the <code><supports-gl-texture></code> element is activated +for all API levels.</p> + +<dt>attributes:</dt> + +<dd> +<dl class="attr"> + + <dt><a name="name"></a>{@code android:name}</dt> + <dd>Specifies a single GL texture compression format supported by the application, + as a descriptor string. Common descriptor values are listed in the table below. + +<table> +<tr> +<th>Texture Compression Format Descriptor</th> +<th>Comments</th> +</tr> +<tr> +<td><code>GL_OES_compressed_ETC1_RGB8_texture</code></td> +<td>Ericsson texture compression. Specified in OpenGL ES 2.0 and available in all +Android-powered devices that support OpenGL ES 2.0.</td> +</tr> +<tr> +<td><code>GL_OES_compressed_paletted_texture</code></td> +<td>Generic paletted texture compression.</td> +</tr> +<tr> +<td><code>GL_AMD_compressed_3DC_texture</code></td> +<td>ATI 3Dc texture compression. </td> +</tr> +<tr> +<td><code>GL_AMD_compressed_ATC_texture</code></td> +<td>ATI texture compression. Available on devices running Adreno GPU, including +HTC Nexus One, Droid Incredible, EVO, and others. For widest compatibility, +devices may also declare a <code><supports-gl-texture></code> element with the +descriptor <code>GL_ATI_texture_compression_atitc</code>. </td> +</tr> +<tr> +<td><code>GL_EXT_texture_compression_latc</code></td> +<td>Luminance alpha texture compression. </td> +</tr> +<tr> +<td><code>GL_EXT_texture_compression_dxt1</code></td> +<td>S3 DXT1 texture compression. Supported on devices running Nvidia Tegra2 +platform, including Motorala Xoom, Motorola Atrix, Droid Bionic, and +others.</td> +</tr> +<tr> +<td><code>GL_EXT_texture_compression_s3tc</code></td> +<td>S3 texture compression, nonspecific to DXT variant. Supported on devices +running Nvidia Tegra2 platform, including Motorala Xoom, Motorola Atrix, Droid +Bionic, and others. If your application requires a specific DXT variant, declare +that descriptor instead of this one.</td> +</tr> +<tr> +<td><code>GL_IMG_texture_compression_pvrtc</code></td> +<td>PowerVR texture compression. Available in devices running PowerVR SGX530/540 +GPU, such as Motorola DROID series; Samsung Galaxy S, Nexus S, and Galaxy Tab; +and others.</td> +</tr> +</table> + +</dd> +</dl></dd> + +<!-- ##api level indication## +<dt>introduced in:</dt> +<dd>API Level </dd>--> + +<dt>see also:</dt> +<dd> + <ul> + <li><a href="{@docRoot}guide/appendix/market-filters.html">Android Market Filters</a></li> + </ul> +</dd> + +<h2 id="market-texture-filtering">Android Market and texture compression filtering</h2> + +<p>Android Market filters the applications that are visible to users, so that +users can see and download only those applications that are compatible with +their devices. One of the ways Market filters applications is by texture +compression compatibility, giving you control over the availability of your +application to various devices, based on the capabilities of their GPUs.</p> + +<p>To determine an application's texture compression compatibility with a given +user's device, Android Market compares:</p> + +<ul> +<li>Texture compression formats that are supported by the application — +an application declares its supported texture compression formats in +<code><supports-gl-texture></code> elements in its manifest <br/>with...</li> +<li>Texture compression formats that are supported by the GPU on the device — +a device reports the formats it supports as read-only system properties.</li> +</ul> + +<p>Each time you upload an application to the Android Market Publisher Site, +Android Market scans the application's manifest file and looks for any +<code><supports-gl-texture></code> elements. It extracts the +format descriptors from the elements and stores them internally as +metadata associated with the application <code>.apk</code> and the application +version. </p> + +<p>When a user searches or browses for applications on Android Market, +the service compares the texture compression formats supported by the application +with those supported by the user's device. The comparison is based on the format +descriptor strings and a match must be exact.</p> + +<p>If <em>any</em> of an application's supported texture compression formats is +also supported by the device, Android Market allows the user to see the +application and potentially download it. Otherwise, if none of the application's +formats is supported by the device, Android Market filters the application so +that it is not available for download. </p> + +<p>If an application does not declare any <code><supports-gl-texture></code> elements, +Android Market does not apply any filtering based on GL texture compression format.</p> + +</dl> + |