SDV déduit l'identité des bundles de services et des applications Java à partir de leur ID Android (AID) généré automatiquement. Étant donné que les services natifs, tels que les couches d'abstraction matérielle (HAL) du fournisseur, ne disposent pas de ce mécanisme automatique, vous devez les configurer manuellement pour associer une identité SDV au programme de chaque service.
Pour associer une identité SDV à un programme de service natif, procédez comme suit :
Définissez un AID unique pour le service dans la plage réservée à la partition où il se trouve, par exemple la plage de fournisseurs ou de produits.
Pour en savoir plus sur les plages spécifiques aux partitions, consultez la section Configurer des AID.
Définissez un AID unique pour chaque service natif, au lieu de partager un seul AID entre plusieurs services. Étant donné que les identités de service sont attribuées à un processus de service en fonction de son AID, le partage d'un AID entraîne le partage des identités de service et de leurs autorisations.
Configurez votre service sous l'AID unique que vous avez créé à l'aide de l'
useroption dans le fichier.rcde votre service.Exemple :
service native_sdv_gateway_client_service /vendor/bin/native_sdv_gateway_client_service [..] user vendor_gateway_client [..]Mappez la valeur numérique de l'AID unique à l'identité de service désignée pour le service dans le
sdv_native_services_namesfichier de configuration de la partition où se trouve le service.L'identité de service se compose du nom du package, du nom du bundle de services et du nom de l'instance de service. Elle est encodée sous forme de chaîne au format
packageName.serviceBundleName/serviceInstanceName.Par exemple, si votre service s'exécute sur la partition du fournisseur avec l'AID
vendor_gateway_clientet a la valeur numérique2902, vous devez ajouter le mappage au fichier/vendor/etc/sdv_native_services_names:2902,android.sdv.samples.gateway.client.NativeTestApp/default