在准备 Android 应用以在 Chromebook 上运行时,请考虑您的应用使用的设备功能。Chromebook 不支持在其他运行 Android 的设备上提供的所有硬件和软件功能。如果您的应用需要 Chromebook 不支持的特定功能,则无法在 Chromebook 上安装。
您可以在清单文件中声明应用对硬件功能和某些软件功能的要求。本文档介绍了与 Chromebook 不兼容的应用清单功能声明。
不兼容的清单条目
本部分中列出的清单条目与 Chromebook 不兼容。如果您的应用使用其中任何条目,请考虑将其移除或包含 required="false"
属性值,以便您的应用可以在 Chromebook 上安装。
有关声明功能使用而不要求设备提供该功能的更多信息,请参阅 <uses-feature>
清单元素指南。有关应用清单功能的完整列表和说明,请参阅功能参考。
注意:Android Studio 2.3 及更高版本内置 Lint 检查功能,可自动验证清单文件。在 Android Studio 中,选择 File > Settings > Editor > Inspections > Android > Lint > Correctness > ChromeOS.
硬件功能
Chromebook 对硬件功能的支持各不相同。有些功能在任何 Chromebook 上都不受支持,而另一些则仅在部分 Chromebook 上受支持。
特殊功能
为了在 Chromebook 上获得更好的硬件支持,android.hardware.type.pc
会禁用鼠标和触摸板的输入仿真。您必须为此条目指定 required="false"
,否则您的应用将只能在 Chromebook 上运行。
不支持的硬件功能
以下列表包含 Chromebook 不支持的硬件功能
-
android.hardware.camera
:后置摄像头 -
android.hardware.camera.autofocus
:使用自动对焦的摄像头 -
android.hardware.camera.capability.manual_post_processing
:使用MANUAL_POST_PROCESSING
功能(包括用于覆盖自动白平衡的功能)的摄像头 -
android.hardware.camera.capability.manual_sensor
:使用MANUAL_SENSOR
功能(包括自动曝光锁定支持)的摄像头 -
android.hardware.camera.capability.raw
:使用RAW
功能(包括保存 DNG (raw) 文件和提供 DNG 相关元数据的功能)的摄像头 -
android.hardware.camera.flash
:使用闪光灯的摄像头 -
android.hardware.camera.level.full
:使用FULL
级别图像捕获支持的摄像头 -
android.hardware.consumerir
:红外 (IR) -
android.hardware.location.gps
:全球定位系统 (GPS) -
android.hardware.nfc
:近场通信 (NFC) -
android.hardware.nfc.hce
:NFC 卡模拟(已弃用) -
android.hardware.sensor.barometer
:气压计(气压) -
android.hardware.telephony
:电话,包括带数据通信服务的无线电 -
android.hardware.telephony.cdma
:电话码分多址 (CDMA) 网络支持 -
android.hardware.telephony.gsm
:电话全球移动通信系统 (GSM) 网络支持 -
android.hardware.type.automotive
:Android Automotive OS 设备 -
android.hardware.type.television
:电视(已弃用) -
android.hardware.usb.accessory
:USB 附件模式 -
android.hardware.usb.host
:USB 主机模式
部分支持的硬件功能
以下列表包含可能在某些 Chromebook 上提供的硬件功能
-
android.hardware.sensor.accelerometer
:加速度计(设备方向) -
android.hardware.sensor.compass
:指南针 -
android.hardware.sensor.gyroscope
:陀螺仪(设备旋转和扭曲) -
android.hardware.sensor.light
:光传感器 -
android.hardware.sensor.proximity
:距离传感器(与用户) -
android.hardware.sensor.stepcounter
:计步器 -
android.hardware.sensor.stepdetector
:步数检测器
触摸屏硬件支持
从 ChromeOS M53 版本开始,所有未明确要求 android.hardware.touchscreen
功能的 Android 应用,也可在支持 android.hardware.faketouch
功能的 ChromeOS 设备上运行。
具有虚拟触控界面的设备提供了一个模拟基本触控事件的用户输入系统。例如,用户可以使用鼠标或遥控器移动屏幕上的光标、滚动列表以及将元素从屏幕的一部分拖动到另一部分。
如果您不希望您的应用安装在具有虚拟触控界面但没有触摸屏的设备上,可以执行以下操作之一
- 在 Google Play 管理中心中排除特定设备。
- 通过明确声明
android.hardware.touchscreen
为安装您的应用所必需的,来过滤掉没有触摸屏硬件的设备。
软件功能
以下列表包含 Chromebook 不支持的软件功能
-
android.software.app_widgets
:主屏幕上的应用微件 -
android.software.device_admin
:设备政策管理 -
android.software.home_screen
:替换设备的起始屏幕 -
android.software.input_methods
:自定义输入法(InputMethodService
的实例) -
android.software.leanback
:为大屏幕观看设计的界面 -
android.software.live_wallpaper
:动态壁纸 -
android.software.live_tv
:直播电视节目 -
android.software.managed_users
:辅助用户和受管理配置文件 -
android.software.sip
:会话发起协议 (SIP) 服务,支持视频会议和即时消息 -
android.software.sip.voip
:基于 SIP 的 IP 语音 (VoIP) 服务,支持双向视频会议
暗示功能要求的权限
您在清单文件中请求的某些权限可能会创建对硬件和软件功能的隐式请求。请求这些权限会阻止您的应用在 Chromebook 上安装。
有关如何防止权限请求导致您的应用在 Chromebook 上不可用的详细信息,请参阅本页面中的不兼容的清单条目部分。
下表显示了暗示功能要求(使应用与 Chromebook 不兼容)的权限
表 1. 暗示与 Chromebook 不兼容的硬件特征的设备权限。
类别 | 此权限 | 暗示此功能要求 |
---|---|---|
相机 | CAMERA |
android.hardware.camera 和android.hardware.camera.autofocus
|
电话 | CALL_PHONE |
android.hardware.telephony |
CALL_PRIVILEGED |
android.hardware.telephony |
|
MODIFY_PHONE_STATE |
android.hardware.telephony |
|
PROCESS_OUTGOING_CALLS |
android.hardware.telephony |
|
READ_SMS |
android.hardware.telephony |
|
RECEIVE_SMS |
android.hardware.telephony |
|
RECEIVE_MMS |
android.hardware.telephony |
|
RECEIVE_WAP_PUSH |
android.hardware.telephony |
|
SEND_SMS |
android.hardware.telephony |
|
WRITE_APN_SETTINGS |
android.hardware.telephony |
|
WRITE_SMS |
android.hardware.telephony |