Android Dev Summit, October 23-24: two days of technical content, directly from the Android team. Sign-up for livestream updates.

Compatibilidad de manifiestos de apps para Chromebooks

Mientras preparas tu app de Android para que se use en Chromebooks, debes tener en cuenta las funciones del dispositivo que esta emplea. Las Chromebooks no admiten todas las funciones de hardware y software que se encuentran disponibles en otros dispositivos con Android. Si tu app requiere funciones específicas que no son compatibles con Chromebooks, la instalación no estará disponible en ellas.

Debes informar los requisitos de tu app para las funciones de hardware y para ciertas funciones de software en el archivo de manifiesto. En este documento se describen las declaraciones de funciones del manifiesto de la app que no son compatibles con las Chromebooks.

Entradas incompatibles de manifiestos

Las entradas del manifiesto enumeradas en esta sesión actualmente no son compatibles con Chromebooks. Si tu app usa alguna de estas entradas, considera quitarlas o incluir con ellas el valor de atributo required="false" para que esta pueda instalarse en Chromebooks. Para obtener más información sobre cómo declarar el uso de una función sin exigir que esté disponible en el dispositivo, consulta la guía sobre el elemento <uses-feature> del manifiesto.

Nota: Consulta la Referencia de funciones para ver una lista completa de funciones y descripciones del manifiesto de la app.

Funciones de hardware

La compatibilidad de las funciones de hardware varía en los equipos Chromebook. Algunas funciones no son compatibles con ninguna Chromebook, mientras que otras son compatibles con algunas de ellas.

Características especiales

En la siguiente lista se incluyen las funciones que actualmente no son compatibles con Chromebooks:

  • android.hardware.type.pc: inhabilita la emulación de entrada para el mouse y el panel táctil. Ten en cuenta que debes indicar required="false" para evitar que la reproducción sea exclusivamente en Chromebooks.

Funciones de hardware incompatibles

En la siguiente lista se incluyen las funciones de hardware que actualmente no son compatibles con Chromebooks:

  • android.hardware.camera: cámara trasera
  • android.hardware.camera.autofocus: cámara con enfoque automático
  • android.hardware.camera.capability.manual_post_processing: cámara que usa la función MANUAL_POST_PROCESSING, incluida la funcionalidad para anular el balance automático de blancos
  • android.hardware.camera.capability.manual_sensor: cámara que usa la función MANUAL_SENSOR, incluida la compatibilidad con el bloqueo de exposición automática
  • android.hardware.camera.capability.raw: cámara que usa la función RAW, incluida la posibilidad de guardar archivos DNG (sin procesar) y proporcionar metadatos relacionados con DNG
  • android.hardware.camera.flash: cámara que usa el flash
  • android.hardware.camera.level.full: cámara compatible con la captura de imágenes en nivel FULL
  • android.hardware.consumerir: infrarrojo (IR)
  • android.hardware.location.gps: GPS
  • android.hardware.nfc: comunicación de campo cercano (NFC)
  • android.hardware.nfc.hce: emulación de la tarjeta NFC (obsoleto)
  • android.hardware.sensor.barometer: barómetro (presión atmosférica)
  • android.hardware.telephony: funciones telefónicas, como radiotelefonía con servicios de comunicación de datos
  • android.hardware.telephony.cdma: compatibilidad con redes de acceso múltiple por división de códigos telefónicos (CDMA)
  • android.hardware.telephony.gsm: compatibilidad con redes del sistema de telefonía global para comunicaciones móviles (GSM)
  • android.hardware.type.automotive: interfaz de usuario de Android Auto
  • android.hardware.type.television: televisión (obsoleto)
  • android.hardware.usb.accessory: modo de accesorios USB
  • android.hardware.usb.host: modo de host USB

Funciones de hardware parcialmente compatibles

En la siguiente lista se incluyen las funciones de hardware que pueden estar disponibles en algunas Chromebooks:

  • android.hardware.sensor.accelerometer: acelerómetro (orientación del dispositivo)
  • android.hardware.sensor.compass: brújula
  • android.hardware.sensor.gyroscope: giroscopio (rotación y giro del dispositivo)
  • android.hardware.sensor.light: luz
  • android.hardware.sensor.proximity: proximidad (respecto del usuario)
  • android.hardware.sensor.stepcounter: contador de pasos
  • android.hardware.sensor.stepdetector: detector de pasos

Compatibilidad con hardware de pantallas táctiles

A partir de la versión M53 del Sistema operativo Chrome, todas las apps de Android que no requieran explícitamente la función android.hardware.touchscreen también se ejecutarán en dispositivos con el Sistema operativo Chrome que admitan la función android.hardware.faketouch. Los dispositivos que tienen interfaces táctiles falsas proporcionan un sistema de ingreso de usuarios que emula las acciones táctiles básicas. Por ejemplo, el usuario puede interactuar con un mouse o un control remoto para mover un cursor sobre la pantalla, desplazarse en una lista y arrastrar elementos de una parte a otra de la pantalla.

Si no deseas que se instale tu app en dispositivos que usan interfaces táctiles falsas pero no tienen pantallas táctiles, puedes realizar una de las siguientes acciones:

Funciones de software

En la siguiente lista se incluyen las funciones de software que actualmente no son compatibles con Chromebook:

  • android.software.app_widgets: widgets de la app en la pantalla principal
  • android.software.device_admin: administración de la política del dispositivo
  • android.software.home_screen: sustituye la pantalla principal del dispositivo
  • android.software.input_methods: métodos de ingreso personalizados (instancias de InputMethodService)
  • android.software.leanback: IU diseñada para la vista en pantallas grandes
  • android.software.live_wallpaper: fondos de pantalla animados
  • android.software.live_tv: transmisión de programas de TV en vivo
  • android.software.managed_users: usuarios secundarios y perfiles administrados
  • android.software.midi: protocolo de interfaz digital para instrumentos musicales (MIDI), que admite la conexión con instrumentos musicales y el suministro de sonido
  • android.software.sip: servicio de protocolo de inicio de sesión (SIP), que admite videoconferencias y mensajería instantánea
  • android.software.sip.voip: servicio de protocolo de voz a través de Internet (VoIP) basado en SIP, que admite videoconferencias bidireccionales

Permisos que implican requisitos de funciones

Algunos permisos que requieres en tus archivos de manifiesto pueden crear solicitudes implícitas de funciones de hardware y software. Si solicitas estos permisos, evitarás que tu app se instale en Chromebooks.

Para obtener información detallada sobre cómo evitar que tu app no esté disponible en Chromebooks debido a la solicitud de permisos, consulta la sesión Entradas incompatibles de manifiestos de esta página.

En la siguiente tabla se muestran los permisos que implican determinados requisitos de funciones que propician la incompatibilidad de una app con Chromebooks:

Tabla 1. Permisos de dispositivos que implican funciones de hardware incompatibles con Chromebook.

Categoría Este permiso... …implica el requisito de esta función
Cámara CAMERA android.hardware.camera y
android.hardware.camera.autofocus
Telefonía CALL_PHONE android.hardware.telephony
CALL_PRIVILEGED android.hardware.telephony
MODIFY_PHONE_STATE android.hardware.telephony
PROCESS_OUTGOING_CALLS android.hardware.telephony
READ_SMSREAD_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