SDV leitet die Identität von Dienstpaketen und Java-Apps von ihrer automatisch generierten Android-ID (AID) ab. Da nativen Diensten wie den Hardware-Abstraktionsebenen (HALs) von Anbietern dieser automatische Mechanismus fehlt, müssen Sie sie manuell konfigurieren, um jedem Programm eines Dienstes eine SDV-Identität zuzuordnen.
So ordnen Sie einem nativen Dienstprogramm eine SDV-Identität zu:
Definieren Sie eine eindeutige AID für den Dienst im reservierten Bereich für die Partition, auf der sich der Dienst befindet, z. B. im Anbieter- oder Produktbereich.
Weitere Informationen zu partitionsspezifischen Bereichen finden Sie unter AIDs konfigurieren.
Definieren Sie für jeden nativen Dienst eine eindeutige AID, anstatt eine einzelne AID für mehrere Dienste zu verwenden. Da Dienstidentitäten einem Dienstprozess basierend auf seiner AID zugewiesen werden, führt die gemeinsame Nutzung einer AID dazu, dass Dienst identitäten und ihre Autorisierungen gemeinsam genutzt werden.
Konfigurieren Sie Ihren Dienst unter der eindeutigen AID, die Sie mit der
userOption in der.rcDatei Ihres Dienstes erstellt haben.Beispiel:
service native_sdv_gateway_client_service /vendor/bin/native_sdv_gateway_client_service [..] user vendor_gateway_client [..]Ordnen Sie den numerischen Wert der eindeutigen AID der Dienstidentität zu, die für den Dienst in der
sdv_native_services_namesKonfigurations datei der Partition festgelegt ist, auf der sich der Dienst befindet.Die Dienstidentität besteht aus dem Paketnamen, dem Namen des Dienstpakets und dem Namen der Dienstinstanz. Sie wird als String im Format
packageName.serviceBundleName/serviceInstanceNamecodiert.Wenn Ihr Dienst beispielsweise auf der Anbieterpartition mit der AID
vendor_gateway_clientausgeführt wird und den numerischen Wert2902hat, müssen Sie die Zuordnung zur Datei/vendor/etc/sdv_native_services_nameshinzufügen:2902,android.sdv.samples.gateway.client.NativeTestApp/default