SDV deriva la identidad de los paquetes de servicios y las apps de Java de su ID de Android (AID) generado automáticamente . Debido a que los servicios nativos, como las capas de abstracción de hardware (HALs) del proveedor, carecen de este mecanismo automático, debes configurarlos de forma manual para asociar una identidad de SDV con el programa de cada servicio.
Para asociar una identidad de SDV con un programa de servicio nativo, sigue estos pasos:
Define un AID único para el servicio en el rango reservado para la partición en la que se encuentra el servicio, como el rango de proveedor o producto.
Para obtener más información sobre los rangos específicos de la partición, consulta Cómo configurar los AIDs.
Define un AID único para cada servicio nativo, en lugar de compartir un solo AID en varios servicios. Debido a que las identidades de servicio se asignan a un proceso de servicio en función de su AID, compartir un AID genera el uso compartido de las identidades de servicio y sus identidades y sus autorizaciones.
Configura tu servicio con el AID único que creaste con la
useropción en el.rcarchivo de tu servicio.Por ejemplo:
service native_sdv_gateway_client_service /vendor/bin/native_sdv_gateway_client_service [..] user vendor_gateway_client [..]Asigna el valor numérico del AID único a la identidad de servicio designada para el servicio en el archivo de configuración
sdv_native_services_namesde la partición en la que se encuentra el servicio.La identidad de servicio consta del nombre del paquete, el nombre del paquete de servicios y el nombre de la instancia de servicio. Se codifica como una cadena con el formato
packageName.serviceBundleName/serviceInstanceName.Por ejemplo, si tu servicio se ejecuta en la partición del proveedor con el AID
vendor_gateway_clienty tiene el valor numérico2902, debes agregar la asignación al archivo/vendor/etc/sdv_native_services_names:2902,android.sdv.samples.gateway.client.NativeTestApp/default