当您准备要在 Chromebook 上运行 Android 应用时,请考虑应用使用的设备功能。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 原始文件及提供 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 的互联网语音协议 (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 |