Schemat pakietów metadanych aplikacji

Począwszy od Androida 14 instalator pakietów na Androida może przetwarzać metadane dotyczące np. praktyk związanych z bezpieczeństwem danych, do użytku w funkcjach platformy Androida, takich jak wraz ze zaktualizowanym komunikatem o dostępie do lokalizacji.

Metadane możesz podać na 2 sposoby:

  • W przypadku aplikacji wstępnie wczytanej do obrazu systemu producenci urządzeń mogą udostępnienie metadanych aplikacji przez dodanie pliku XML do obrazu systemu z trwałym pakietem opisanym poniżej.

  • W przypadku instalowanych lub aktualizowanych aplikacji: Aby określić te metadane, aplikacja instalatory powinni przekazać obiekt PersistableBundle do funkcji Metoda setAppMetadata().

Trwały pakiet najwyższego poziomu składa się z tych par klucz-wartość. O ile nie zaznaczono inaczej, każdy klucz jest opcjonalny.

version (pole wymagane)
Numer wersji formatu metadanych aplikacji. Jako wartość bieżącej wersji użyj wartości 2, a jako typu użyj wartości long. Jeśli oczekiwane klucze lub typy treści AppMetadata, Android zmieni numer wersji.
safety_labels
Obiekt PersistableBundle, który określa etykiety bezpieczeństwa aplikacji.
system_app_safety_label
Obiekt PersistableBundle, który określa parametr aplikacji system-app-safety-label. W przypadku aplikacji, które działają jako usługa systemowa, parametr zamiast pakietu safety_labels używany jest pakiet system_app_safety_label.
transparency_info
Obiekt PersistableBundle, który określa przezroczystość aplikacji informacje.

Format etykiet bezpieczeństwa

Pakiet safety_labels zawiera te pary klucz-wartość:

version (pole wymagane)
Numer wersji formatu etykiet bezpieczeństwa. Użyj w tym celu wartości 1 bieżącej wersji i long jako typu.
data_labels
Obiekt PersistableBundle, który określa dane zbierane przez aplikację i udostępnienia.
security_labels
Obiekt PersistableBundle, który określa usunięcie danych aplikacji metod szyfrowania.
third_party_verification
Obiekt PersistableBundle, który określa sposób ochrony danych w aplikacji metody są zweryfikowane przez firmę zewnętrzną.

Zbierane i udostępniane dane

Pakiet data_labels zawiera następujące pary klucz-wartość:

data_collected
Obiekt PersistableBundle, który określa typy danych obsługiwane przez aplikację zbieranych danych.
data_shared
Obiekt PersistableBundle, który określa typy danych obsługiwane przez aplikację udostępnień.

Kategorie danych

Klucze data_collected i data_shared używają pakietu data_category format, który zawiera pary klucz-wartość wymienione na poniższej liście. Każdy klawisz jest mapowany na obiekt PersistableBundle, który określa typy danych dla dla konkretnej kategorii.

  • personal
  • financial
  • location
  • email_text_message
  • photo_video
  • audio
  • storage
  • health_fitness
  • contacts
  • calendar
  • identifiers
  • app_performance
  • actions_in_app
  • search_and_browsing

Typy danych

Każdy klucz w pakiecie data_category jest mapowany na inny pakiet, który korzysta z metody Format data_type. Klucze podane w formacie data_type zależą na temat tego, co wybierzesz jako data_category.

Możliwe pary klucz/wartość data_type są wymienione na liście poniżej. jest wartością każdego z tych kluczy PersistableBundle, która opisuje metod korzystania z danych przez aplikację w przypadku tego typu danych. Niektóre typy danych używaj tylko jednego klawisza.

Osobisty charakter

  • name
  • email_address
  • physical_address
  • phone_number
  • race_ethnicity
  • political_or_religious_beliefs
  • sexual_orientation_or_gender_identity
  • personal_identifiers
  • other

Finanse

  • card_bank_account
  • purchase_history
  • credit_score
  • other

Lokalizacja

  • approx_location
  • precise_location

E-maile i SMS-y

  • emails
  • text_messages
  • other

Zdjęcia i filmy

  • photos
  • videos

Dźwięk

  • sound_recordings
  • music_files
  • other

Miejsce na dane

files_docs

Zdrowie i fitness

  • health
  • fitness

Kontakty

contacts

Kalendarz

calendar

Identyfikatory

other

Skuteczność aplikacji

  • crash_logs
  • performance_diagnostics
  • other

Działania w aplikacji

  • user_interaction
  • in_app_search_history
  • installed_apps
  • user_generated_content
  • other

Wyszukiwanie i przeglądanie

web_browsing_history

Użycie danych

Pakiet data_usage zawiera te pary klucz-wartość:

purposes (wymagane)

Tablica liczb całkowitych, która reprezentuje określone przyczyny zbierania lub udostępnianie danych i używa PersistableBundle putIntArray . W przypadku każdego z nich wymagany jest co najmniej 1 z celów zdefiniowanych poniżej. w pakiecie.

  • 1: PURPOSE_APP_FUNCTIONALITY
  • 2: PURPOSE_ANALYTICS
  • 3: PURPOSE_DEVELOPER_COMMUNICATIONS
  • 4: PURPOSE_FRAUD_PREVENTION_SECURITY
  • 5: PURPOSE_ADVERTISING
  • 6: PURPOSE_PERSONALIZATION
  • 7: PURPOSE_ACCOUNT_MANAGEMENT
is_collection_optional

Wartość logiczna. Określa, czy użytkownicy mogą włączyć lub wyłączyć tę opcję zbieranie danych.

Uwaga: ustaw tę wartość tylko dla data_category pakiety reprezentujące zbieranie danych; nie ustawiaj go do udostępniania danych.

ephemeral

Wartość logiczna. Określa, czy aplikacja przetwarza dane tylko po stronie serwera w pamięci, a nie na dysku, oraz że aplikacja przechowuje dane. nie dłużej niż jest to konieczne do obsługi konkretnego procesu przetwarzania danych użytkownika.

Uwaga: ustaw tę wartość tylko dla data_category pakiety reprezentujące zbieranie danych; nie ustawiaj go do udostępniania danych.

praktyki dotyczące usuwania i szyfrowania danych;

Pakiet security_labels zawiera pary klucz-wartość, które reprezentują metody usuwania i szyfrowania danych:

is_data_deletable
Wartość logiczna. Określa, czy aplikacja zezwala użytkownikowi na wysyłanie próśb aplikacji do usunięcia danych użytkownika.
is_data_encrypted
Wartość logiczna. Określa, czy wszystkie dane użytkownika zbierane przez aplikację są zaszyfrowane podczas przesyłania.

Weryfikacja innych firm

Pakiet third_party_verification składa się z jednego klucza (url). Ten URL, reprezentowana jako wartość ciągu, określa witrynę firmy zewnętrznej używaną do weryfikacji informacji o bezpieczeństwie danych aplikacji.

Format etykiet bezpieczeństwa usługi systemu

W przypadku aplikacji działających jako usługa systemowa pakiet system_app_safety_label jest używany zamiast pakietu safety_labels i zawiera następujące elementy pary klucz-wartość:

url (wymagany)

  • Adres URL prowadzący do strony z informacjami na temat bezpieczeństwa aplikacji, która jest i działa jako usługa systemowa.
  • Jako typu wybierz string.
  • Jeśli nie został podany, za pomocą adresu URL polityki prywatności kreacji zastępczej.
  • Uwaga: Sklep Google Play używa privacy_policy jako awaryjnego.

Format informacji o przejrzystości

Pakiet transparency_info zawiera te pary klucz-wartość:

developer_info
Obiekt PersistableBundle, który określa informacje o aplikacji
app_info
Obiekt PersistableBundle, który określa informacje o aplikacji.
.

Informacje o deweloperze

Pakiet developer_info zawiera następujące pary klucz-wartość:

developer_#
Obiekt PersistableBundle identyfikujący dewelopera. developer_info zawiera co najmniej 1 developer_#, gdzie # to liczba całkowita. Na przykład developer_0, developer_1, developer_2 itd.

Programista

Pakiet developer_# zawiera tę parę klucz-wartość pary:

name (wymagany)
Ciąg tekstowy z nazwą dewelopera.
email (wymagany)
Ciąg tekstowy zawierający adres e-mail dewelopera.
address (wymagany)
Ciąg tekstowy zawierający adres pocztowy dewelopera.
country_region (wymagany)
Ciąg znaków wskazujący kraj lub region dewelopera.
website
Ciąg znaków z adresem witryny dewelopera.

app_registry

  • Ciąg znaków informujący o magazynie lub rejestrze dewelopera.
  • Jeśli deweloper jest też zarejestrowany w sklepie lub innym rejestrze, wartość powinien być nazwą pakietu na Androida w sklepie lub adresem URL rejestru.
  • Dozwolonych jest wiele wpisów dla wielu sklepów.
  • W przypadku Google Play użyj com.android.vending.
  • Jeśli deweloper jest pakietem SDK wymienionym na platformie Google Play SDK Index, pomiń tę informację .
  • Jeśli deweloper nie jest zarejestrowany w żadnym sklepie z aplikacjami ani w rejestrze, pomiń ten krok. .

app_registry_id

  • Ciąg tekstowy zawierający identyfikator dewelopera wskazanego elementu app_registry.
  • Jeśli deweloper jest też zarejestrowany w sklepie lub innym rejestrze, wartość powinna być tożsamością sklepu lub rejestru.
  • Dozwolonych jest wiele wpisów dla wielu sklepów.
  • W przypadku deweloperów zarejestrowanych w Google Play ta wartość musi być adresem URL. na stronie dewelopera (np. https://play.google.com/store/apps/dev?id=5700313618786177705 to Adres URL dewelopera Google LLC).
  • Jeśli deweloper jest deweloperem pakietu SDK wymienionym na platformie Google Play SDK Index, adres URL pakietu SDK na platformie Google Play SDK Index (np. https://play.google.com/sdks/details/com-google-android-gms-play-services-ads to adres URL Google Play SDK Index pakietu SDK do reklam mobilnych Google (GMA).
  • Jeśli deweloper jest zarejestrowany w innym sklepie lub rejestrze, sklepie z aplikacjami Możesz podać adres URL lub inny identyfikator.
  • Jeśli deweloper nie jest zarejestrowany w żadnym sklepie z aplikacjami, ten atrybut może zostać pominięto.

Informacje o aplikacji

Pakiet app_info zawiera te pary klucz-wartość:

title (wymagany)
Ciąg tekstowy z tytułem aplikacji.
description (wymagany)
Ciąg znaków określający przeznaczenie aplikacji w zrozumiałym dla człowieka obiekcie blob w języku angielskim.
contains_ads (wymagany)
Wartość logiczna określająca, czy aplikacja wyświetla reklamy.

privacy_policy (wymagany)

  • Ciąg tekstowy zawierający atrybut adresu URL prowadzący do polityki prywatności. który zawiera szczegółowe informacje o sposobie przetwarzania danych użytkownika.
  • Wymagane w przypadku aplikacji, które przesyłają dane użytkownika.
  • Jeśli aplikacja nie zawiera tego linku, zakładamy, że nie zawiera ona tego linku. obsługi danych użytkownika.
category (wymagany)

Ciąg tekstowy zawierający jedną z tych kategorii aplikacji, która najlepiej opisuje jej główne przeznaczenie:

  • Android (tylko w przypadku komponentu AOSP)*
  • Sztuka i projektowanie
  • Samochody i inne pojazdy
  • Uroda
  • Książki i źródła
  • Firma
  • Komiksy
  • Komunikacja
  • Randki
  • Edukacja
  • Rozrywka
  • Wydarzenia
  • Finanse
  • Jedzenie i picie
  • Gra
  • Zdrowie i fitness
  • Dom
  • Instalator (tylko w przypadku sklepu z aplikacjami lub innego instalatora)*
  • Biblioteki i materiały demonstracyjne
  • Styl życia
  • Mapy i nawigacja
  • Medycyna
  • Muzyka i dźwięk
  • Wiadomości i czasopisma
  • Dla rodziców
  • Personalizacja
  • Fotografia
  • Produktywność
  • Bezpieczeństwo*
  • Zakupy
  • Społecznościowe
  • Sport
  • Narzędzia
  • Podróże i informacje lokalne
  • Aktualizator (tylko w przypadku domyślnej bezprzewodowej aplikacji do aktualizowania na urządzeniu)*
  • Edytory i odtwarzacze wideo
  • Pogoda
contact_info
Obiekt PersistableBundle zawierający informacje kontaktowe dla (poniżej).

Informacje kontaktowe

Pakiet contact_info zawiera następujące pary klucz-wartość:

email (wymagany)
Ciąg tekstowy zawierający adres e-mail aplikacji.
website
Ciąg znaków określający witrynę aplikacji.