Aby utworzyć AppCard, aplikacja musi utworzyć w pliku manifestu dostawcę, który rozszerza klasę
AppCardContentProvider. AppCardContentProvider ukrywa szczegóły, aby ułatwić tworzenie AppCard.
Deklaracja w pliku manifestu
Aby utworzyć AppCard, aplikacja musi utworzyć dostawcę w pliku manifestu, aby rozszerzyć AppCardContentProvider.
<provider android:name=".SimpleAppCardContentProvider"
android:authorities="com.example.appcard.sample.media"
android:permission="@string/host_permission"
android:exported="true&>quot;
< android:>enabled="tru<e"
intent-filter
action android:>name="co<m.android.car.>a<ppcard.AP>P_CARD_PROVIDER" /
/intent-filter
/provider
W przypadku każdego pakietu można zdefiniować tylko jednego dostawcę z tymi właściwościami:
android:exported="true"android:enabled="true"android:permission="@string/host_permission"LUB
android:readPermission="@string/host_permission"ORAZ
android:writePermission="@string/host_permission"
@string/host_permissionznajduje się w bibliotece AppCard i określa uprawnienia w zależności od wersji interfejsu Android API systemu.Używanie zasobu tekstowego działa tylko podczas kompilacji za pomocą Gradle. Gdy używasz Soong, określ ciąg tekstowy z wartością zasobu tekstowego zgodnie z odpowiednim kwalifikatorem zasobu.
(domyślny)
android:grantUriPermissions="false"(domyślny)
android:forceUriPermissions="false"Aby uniknąć nieoczekiwanych wyników, dostawca musi zdefiniować tylko jeden autorytet w
android:authorities.Zadeklaruj filtr intencji oparty na działaniu,
com.android.car.appcard.APP_CARD_PROVIDER
Rozszerzenie klasy AppCardContentProvider
W tej sekcji opisujemy metody override i chronione metody final.
Metody zastępowania
val authority: Stringandroid:authorities.fun onCreate(): Booleansuper.onCreate(). Użyj tej metody, aby skonfigurować funkcję, która może spowodować opóźnienie, jeśli zostanie skonfigurowana w momencie wysłania żądania AppCard.val appCardIds: Listfun onAppCardAdded(String, AppCardContext): AppCardAppCardContext, które zawierają wskazówki dotyczące sposobu wyświetlania AppCard.
Użyj tej metody, aby skonfigurować dowolną funkcję wymaganą przez AppCard obsługiwane jako dostawca. Po wywołaniu tej funkcji komponent AppCard odpowiadający podanemu identyfikatorowi jest uznawany za aktywny.
fun onAppCardRemoved(String)fun onAppCardContextChanged(String, AppCardContext)AppCardContext.Chronione metody finalne
fun sendAppCardUpdate(AppCard)fun sendAppCardComponentUpdate(String, Component)EnforceFastUpdateRate, aktualizacja jest wysyłana natychmiast.Najczęstsze pytania
Gdzie są przykładowe implementacje?