<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"] />
包含于
<manifest>
说明

指示应用所需的硬件和软件功能。例如,应用可能指定它需要物理键盘或特定的导航设备(例如轨迹球)。此规范用于避免将应用安装在无法正常运行的设备上。

注意:大多数应用不使用此清单标记。始终支持方向键 (D-pad) 输入,以帮助视力障碍用户,并支持除触摸输入外或替代触摸输入提供方向键输入的设备。

如需了解如何在应用中支持方向键输入,请参阅处理控制器操作。如果您的应用在没有触摸屏的情况下无法正常运行,请改用<uses-feature> 标记来声明所需的触摸屏类型,范围从用于基本触摸式事件的 "android.hardware.faketouch" 到更高级的触摸类型(例如用于来自多指的明确输入的 "android.hardware.touchscreen.multitouch.jazzhand")。

属性
android:reqFiveWayNav
应用是否需要五向导航控件。如果需要,则为 "true";如果不需要,则为 "false"。五向控件是指能够将选择向上、向下、向右或向左移动,并提供调用当前选择方式的控件。它可以是方向键 (D-pad)、轨迹球或其他设备。

如果应用需要方向控件,但不需要特定类型的控件,则可以将此属性设置为 "true" 并忽略 reqNavigation 属性。但是,如果它需要特定类型的方向控件,则可以忽略此属性,并改为设置 reqNavigation

android:reqHardKeyboard
应用是否需要硬件键盘。如果需要,则为 "true";如果不需要,则为 "false"
android:reqKeyboardType
应用所需的键盘类型(如果有)。此属性不区分硬件键盘和软件键盘。如果需要某种类型的硬件键盘,请在此处指定类型,并同时将 reqHardKeyboard 属性设置为 "true"

值必须是以下字符串之一

说明
"undefined" 应用不需要键盘。未定义键盘要求。这是默认值。
"nokeys" 应用不需要键盘。
"qwerty" 应用需要标准 QWERTY 键盘。
"twelvekey" 应用需要十二键键盘,例如大多数手机上的键盘,其按键可输入数字 09,外加星号 (*) 和井号 (#) 键。
android:reqNavigation
应用所需的导航设备(如果有)。值必须是以下字符串之一
说明
"undefined" 应用不需要任何类型的导航控件。未定义导航要求。这是默认值。
"nonav" 应用不需要导航控件。
"dpad" 应用需要方向键进行导航。
"trackball" 应用需要轨迹球进行导航。
"wheel" 应用需要导航轮。

如果应用需要导航控件,但具体类型无关紧要,则可以将其 reqFiveWayNav 属性设置为 "true",而不是设置此属性。

android:reqTouchScreen
应用所需的触摸屏类型(如果有)。值必须是以下字符串之一
说明
"undefined" 应用不需要触摸屏。未定义触摸屏要求。这是默认值。
"notouch" 应用不需要触摸屏。
"stylus" 应用需要可用手写笔操作的触摸屏。
"finger" 应用需要可用手指操作的触摸屏。

注意:如果您的应用需要某种类型的触摸输入,请改用 <uses-feature> 标记来声明所需的触摸屏类型,从用于基本触摸式事件的 "android.hardware.faketouch" 开始。

引入于
API 级别 3
另请参阅