am 91d60268: am a48de700: Merge "clarification to the uses-configuration tag to discourage its use." into klp-docs

* commit '91d6026894cd118f1fa1236c28c8384272ea7421':
  clarification to the uses-configuration tag to discourage its use.
This commit is contained in:
Scott Main
2013-11-14 11:25:19 -08:00
committed by Android Git Automerger

View File

@@ -12,7 +12,7 @@ keyboard / navigation control / touch screen to work." But then what does "unde
Seems like some API change is in the works, either eliminating the "no___" values or Seems like some API change is in the works, either eliminating the "no___" values or
"undefined". Since it's unclear what the change will be, I've chosen to document the "no___" "undefined". Since it's unclear what the change will be, I've chosen to document the "no___"
and "undefined" attributes using the same language, which is surely wrong but may make it and "undefined" attributes using the same language, which is surely wrong but may make it
easier to update the doc when the change is made. --> easier to update the doc when the change is made... Nov 2013, this still seems unresolved. -->
<dl class="xml"> <dl class="xml">
<dt>syntax:</dt> <dt>syntax:</dt>
@@ -32,20 +32,17 @@ For example, an application might specify that it requires a physical keyboard
or a particular navigation device, like a trackball. The specification is or a particular navigation device, like a trackball. The specification is
used to avoid installing the application on devices where it will not work. used to avoid installing the application on devices where it will not work.
<p> <p class="note"><strong>Note: Most apps should not use this manifest tag.</strong> You should
If an application can work with different device configurations, it <em>always</em> support input with a directional pad (d-pad) in order to assist sight-impaired
should include separate {@code &lt;uses-configuration&gt;} declarations for users and support devices that provide d-pad input in addition to or instead of touch. For
each one. Each declaration must be complete. For example, if an application information about how to support d-pad input in your app, read <a href=
requires a five-way navigation control, a touch screen that can be operated "{@docRoot}guide/topics/ui/accessibility/apps.html#focus-nav">Enabling Focus Navigation</a>. If
with a finger, and either a standard QWERTY keyboard or a numeric 12-key your app absolutely cannot function without a touchscreen, then instead use the <a href=
keypad like those found on most phones, it would specify these requirements "{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code &lt;uses-feature&gt;}</a> tag to
with two {@code &lt;uses-configuration&gt;} elements as follows: declare the required touchscreen type, ranging from {@code "android.hardware.faketouch"} for basic
</p> touch-style events to more advanced touch types such as {@code
"android.hardware.touchscreen.multitouch.jazzhand"} for distinct input from multiple fingers.</p>
<pre>&lt;uses-configuration android:reqFiveWayNav="true" android:reqTouchScreen="finger"
android:reqKeyboardType="qwerty" /&gt;
&lt;uses-configuration android:reqFiveWayNav="true" android:reqTouchScreen="finger"
android:reqKeyboardType="twelvekey" /&gt;</pre></dd>
<dt>attributes:</dt> <dt>attributes:</dt>
<dd><dl class="attr"> <dd><dl class="attr">
@@ -158,7 +155,14 @@ The value must be one of the following strings:
<td>The application requires a touch screen that's operated with a stylus.</td> <td>The application requires a touch screen that's operated with a stylus.</td>
</tr><tr> </tr><tr>
<td>"{@code finger}"</td> <td>"{@code finger}"</td>
<td>The application requires a touch screen that can be operated with a finger.</td> <td>The application requires a touch screen that can be operated with a finger.
<p class="note"><strong>Note:</strong> If some type of touch input is required for your app,
you should instead use the
<a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code
&lt;uses-feature>}</a> tag to declare the required touchscreen
type, beginning with {@code "android.hardware.faketouch"} for basic touch-style events.</p>
</td>
</tr> </tr>
</table></dd> </table></dd>
</dl></dd> </dl></dd>