Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Perfiles de dispositivos complementarios

El perfil de dispositivo complementario, introducido en Android 12, es una función que permite que las aplicaciones complementarias soliciten un conjunto de permisos específicos para el tipo de dispositivo complementario, por ejemplo, un reloj inteligente. El uso de un perfil de dispositivo complementario simplifica el proceso de inscripción al permitir que las aplicaciones muestren un solo mensaje a los usuarios en sus dispositivos móviles para solicitar un conjunto definido de permisos en lugar de varios mensajes que solicitan permisos individualmente. Esto puede permitir una experiencia de configuración más optimizada y mejores tasas de suscripción para aplicaciones complementarias.

El uso de perfiles de dispositivos complementarios solo está disponible para los fabricantes de dispositivos que tienen dispositivos complementarios. Para los dispositivos complementarios para obtener acceso a la función, deben cumplir con los requisitos y ser aprobados.

Los siguientes tipos de perfiles de dispositivo compañero está disponible en Android 12: COMPANION_DEVICE_WATCH .

Para obtener más información acerca de los dispositivos de compañía, ver el emparejamiento dispositivo compañero .

Comportamiento del dispositivo

Esta sección describe el comportamiento del dispositivo cuando se utilizan perfiles de dispositivos complementarios.

Cuando un usuario acepta la petición de una aplicación para crear una asociación con un dispositivo complementario, el CompanionDeviceManager (MDL) espera el servicio para el dispositivo compañero para conectar, y cuando se conecta, el MDL asigna la función de perfil de dispositivo (por ejemplo, el reloj) a la aplicación complementaria, que otorga todos los permisos definidos para ese rol de perfil especificado. La figura 1 muestra un ejemplo de una aplicación que solicita permisos para el COMPANION_DEVICE_WATCH perfil de dispositivo.

Ver mensaje de diálogo de perfil de dispositivo

Figura 1. diálogo solicitando permisos para el perfil de dispositivo reloj.

Cuando se elimina la asociación entre una aplicación y el dispositivo complementario, por ejemplo, cuando se borran los datos de un paquete o cuando se olvida un dispositivo, CDM revoca la función de perfil de dispositivo para la aplicación, lo que elimina todos los permisos definidos para la función de perfil. desde la aplicación.

Después de que un usuario acepta la solicitud de una aplicación para otorgar permisos para un perfil de dispositivo en particular, el usuario puede revocar los permisos individuales que se otorgaron. Cuando un usuario revoca un permiso, la aplicación permanece asociada con el dispositivo complementario, pero es posible que algunas funciones no estén disponibles. Si se requiere el permiso para que la aplicación funcione, la aplicación debe solicitar el permiso a través de una normal de solicitud de permiso .

Requisitos

Para que una aplicación complementaria obtenga acceso a la API de perfil de dispositivo complementario, la aplicación debe cumplir los siguientes requisitos:

  • Tener un dispositivo complementario (por ejemplo, un reloj inteligente).
  • Tener una razón legítima para requerir los permisos definidos para el perfil del dispositivo complementario.

Ver los requisitos del perfil del dispositivo complementario

La siguiente tabla describe los permisos definidos para la COMPANION_DEVICE_WATCH papel perfil de dispositivo y los requisitos para su uso.

Permisos Requisitos de dispositivos y aplicaciones complementarias
Notificaciones

BIND_NOTIFICATION_LISTENER_SERVICE
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene una pantalla capaz de mostrar notificaciones (se excluyen los dispositivos que usan hápticos en lugar de una pantalla)
  • Proporciona una experiencia de notificación de cara al usuario, por ejemplo, mostrando notificaciones del teléfono en la pantalla del dispositivo complementario
Teléfono

phone
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene un micrófono y un altavoz integrados que permiten la conversación por voz.
  • Tiene una pantalla que muestra la información de la persona que llama
  • Proporciona una experiencia de llamadas telefónicas de cara al usuario (la aplicación complementaria une las llamadas telefónicas)
SMS

sms
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene una pantalla que muestra mensajes SMS
  • Proporcione una experiencia de SMS de cara al usuario
Contactos

contacts
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene una pantalla de visualización
  • Utiliza la información de contacto como parte de la experiencia de llamadas o mensajería.
Calendario

calendar
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene una pantalla de visualización
  • Proporcione una experiencia de calendario de cara al usuario en el reloj
Dispositivos cercanos

nearby_devices
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene una pantalla de visualización
  • Proporcione una experiencia de emparejamiento / conexión de cara al usuario en el reloj
Aprovisionamiento de eSIM

USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene una pantalla de visualización
  • Brindar una experiencia de cara al usuario que administre los servicios del suscriptor del operador en el reloj.
Gestionar llamadas en curso

MANAGE_ONGOING_CALLS
  • Ser un dispositivo conectado mediante Bluetooth y / o Wi-Fi
  • Tiene un micrófono y un altavoz integrados que permiten la conversación por voz.
  • Tiene una pantalla que muestra la información de la persona que llama
  • Proporciona una experiencia de llamadas telefónicas de cara al usuario (la aplicación complementaria une las llamadas telefónicas)

Conseguir acceso

Para que las aplicaciones obtengan acceso a los perfiles de dispositivos complementarios, deben aprobarse y agregarse a una lista de permitidos. Cuando una solicitud para ser agregado a la AllowList es recibido, el equipo de Android revisa la aplicación para asegurarse de que cumple con los requisitos para el perfil de dispositivo complementario correspondiente.

Implementación

Para los fabricantes de dispositivos que implementan una aplicación complementaria con un dispositivo específico, use las siguientes configuraciones requeridas del sistema Android para certificar la aplicación complementaria, lo que permite que la aplicación omita mostrar el indicador de CDM para los usuarios.

  1. Recupere el certificado usando el siguiente comando:

    keytool  -printcert -jarfile PATH/TO/APK
    
  2. Reemplace el nombre del paquete y el certificado como se muestra en la siguiente entrada de muestra en el archivo de configuración:

    <!-- A list of packages managing companion device(s) by the same manufacturers as the main device.
    It will not create the association without prompting if the association has been called multiple
    times in a short period. Note that config_companionDeviceManagerPackage and config_companionDeviceCerts
    are parallel arrays. -->
    
        <string-array name="config_companionDevicePackages" translatable="false">
            <item>YOUR_COMAPNION_APP_PACKAGE_NAME</item>
        </string-array>
    
        <!-- A list of SHA256 Certificates managing companion device(s) by the same manufacturers as the
        main device. It will fall back to showing a prompt if the association has been called multiple
        times in a short period. Note that config_companionDeviceCerts and config_companionDeviceManagerPackage
        are parallel arrays.
        Example: "1A:2B:3C:4D" -->
    
        <string-array name="config_companionDeviceCerts" translatable="false">
            <item>YOUR_COMPANION_APP_CERTIFICATE</item>
        </string-array>
    
  3. Utilice AssociationRequest para hacer una solicitud de asociación a un solo dispositivo compañero.

Para los desarrolladores de terceras partes que aplican un compañero de aplicación que solicita la DEVICE_PROFILE_WATCH perfil, haga lo siguiente:

  1. Llame a la setDeviceProfile método.
  2. Pase en el DEVICE_PROFILE_WATCH perfil en la construcción de AssociationRequest .

Validación

Para probar el comportamiento de la función de perfil de dispositivo complementario, utilice las siguientes pruebas CTS: