Syntax (syntax ):
<Uses-configurationandroid: 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"]/>
Included in (contained in ):
<Manifest>
Description ):
This attribute is used to specify the applicationProgramRequired hardware and software features. For example, an application can use this element to specify the required physical keyboard or special navigation devices, such as trackballs. Using this specification can avoid installing applications on devices that do not support their work.
If the application can work with different device configurations, it should include an independent <uses-configuration> Declaration for each configuration. Each statement must be completed. For example, an application requires a 5-way navigation control, a touch screen that supports finger operations, a standard QWERTY keyboard, or a 12-key numeric keyboard, therefore, two <uses-configuration> elements are used to specify these requirements:
<Uses-configurationandroid: reqfivewaynav = "true" Android: reqtouchscreen = "finger"
Android: reqkeyboardtype = "qwerty"/>
<Uses-configurationandroid: reqfivewaynav = "true" Android: reqtouchscreen = "finger"
Android: reqkeyboardtype = "twelvekey"/>
Attributes (attributes ):
Android: reqfivewaynav
This attribute is used to specify whether the application requires five-way navigation control. If it is set to true, it is required; otherwise, it is not required. Five-direction control refers to the ability to move the selected object up, down, left, right, and provides a method to call the selected object. It can be a D-pad (direction board), trackball, etc.
If the application requires a direction control, but not a special type of control, you can set this attribute to true and ignore the reqnavigation attribute. However, if an application requires a special type of direction control, you can ignore this attribute and replace it with the reqnavigation attribute settings.
Android: reqhardkeyboard
This attribute is used to specify whether the application requires a hard keyboard. If it is set to true, it is required; otherwise, it is not required.
Android: reqkeyboardtype
This attribute is used to specify any keyboard type required by the application. This attribute does not distinguish between soft and hard keyboards. If a type of hard keyboard is required, use this attribute to specify the type and set the reqhardkeyboard attribute to true.
The attribute value must be one of the values in the following table:
Value
Description
Undefined
The application does not require a keyboard. (The keyboard requirement is not defined .) This is the default value.
Nokeys
The application does not require a keyboard. It clearly defines that the application does not require a keyboard.
Qwerty
The application requires a standard QWERTY keyboard.
Twelvekey
The application needs a 12-key numeric keyboard like most phones. The keyboard contains 0 ~ 9.
Android: reqnavigation
This property defines any navigation device required by the application. The property value must be one of the following values:
Value
Description
Undefined
Applications do not require any type of navigation control. (Application navigation requirements are not defined .) This is the default value.
Nonav
Applications do not need navigation control.
DPAD
Applications require the use of D-pad (direction board) for Navigation Control
Trackball
Applications require trackball for Navigation Control
Wheel
The application requires a navigation wheel for navigation control.
If the application requires a navigation control, but does not care about the specific control type, you must set the reqfivewaynav attribute to true, instead of setting this attribute only.
Android: reqtouchscreen
This attribute is used to set any touch screen type required by the application. The attribute value must be one of the following strings:
Value
Description
Undefined
Applications do not need touch screens. (Touch screen requirements are not defined .) This is the default value.
Notouch
Applications do not need touch screens
Stylus
Applications require touch screens with touch points.
Finger
Applications need a touch screen that can be operated with one finger.
Introduced version (introduced in)
API level 3