在准备您的 Android 应用以在 Chromebook 上运行时,请考虑您的应用使用的设备功能。Chromebook 不支持在运行 Android 的其他设备上可用的所有硬件和软件功能。如果您的应用需要 Chromebook 不支持的特定功能,则它将无法在 Chromebook 上安装。
您在清单文件中声明您的应用对硬件功能和某些软件功能的要求。本文档描述了与 Chromebook 不兼容的应用清单功能声明。
不兼容的清单条目
本节列出的清单条目与 Chromebook 不兼容。如果您的应用使用任何这些条目,请考虑将其删除或包含required="false"
属性值,以便您的应用可以安装在 Chromebook 上。
有关在无需设备上提供该功能的情况下声明功能使用的更多信息,请参阅 <uses-feature>
清单元素的指南。有关应用清单功能和说明的完整列表,请参阅功能参考。
注意:Android Studio 2.3 及更高版本具有内置的 lint 检查,可以自动验证清单文件。在 Android Studio 中,选择文件 > 设置 > 编辑器 > 检查 > Android > Lint > 正确性 > 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(原始)文件和提供 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 Console中排除特定设备。
- 通过显式声明需要
android.hardware.touchscreen
才能安装您的应用,从而过滤掉没有触摸屏硬件的设备。
软件特性
以下列表包含Chromebook不支持的软件特性
-
android.software.app_widgets
:主屏幕上的应用小部件 -
android.software.device_admin
:设备策略管理 -
android.software.home_screen
:替换设备的主屏幕 -
android.software.input_methods
:自定义输入法(InputMethodService
的实例) -
android.software.leanback
:为大屏幕观看设计的UI -
android.software.live_wallpaper
:动态壁纸 -
android.software.live_tv
:直播电视节目流 -
android.software.managed_users
:辅助用户和托管配置文件 -
android.software.sip
:会话发起协议 (SIP) 服务,支持视频会议和即时消息 -
android.software.sip.voip
:基于SIP的语音互联网协议 (VoIP) 服务,支持双向视频会议
隐含特性需求的权限
您在清单文件中请求的一些权限可能会创建对硬件和软件特性的隐式请求。通过请求这些权限,您可以阻止您的应用安装在Chromebook上。
有关如何防止权限请求使您的应用在Chromebook上不可用的详细信息,请参阅此页面的不兼容的清单条目部分。
下表显示了隐含特性需求(使应用与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 |