Korzystając z interfejsu Play Age Signals API (beta), akceptujesz warunki korzystania z usługi i zgadzasz się przestrzegać wszystkich zasad Google Play dla deweloperów. Aby poprosić o stan i przedział wiekowy użytkownika, wywołaj interfejs API z poziomu aplikacji w czasie działania. Interfejs Play Age Signals API zwraca dane tylko o użytkownikach z regionów, w których zgodnie z prawem musimy udostępniać dane o kategoriach wiekowych.
Play zwraca przedział wiekowy na podstawie grup wiekowych zdefiniowanych w odpowiednich jurysdykcjach i regionach. Domyślne przedziały wiekowe zwracane przez interfejs API w odpowiednich jurysdykcjach i regionach to 0–12, 13–15, 16–17 i 18+, ale mogą się one zmieniać w zależności od wymagań regionalnych.
Integrowanie interfejsu Play Age Signals API z aplikacją
Aby zintegrować interfejs Play Age Signals API z aplikacją, dodaj ten ciąg do pliku build.gradle
aplikacji:
implementation 'com.google.android.play:age-signals:0.0.1-beta01'
Żądanie sygnałów dotyczących wieku
Oto przykład wysyłania żądania sygnałów dotyczących wieku:
// Create an instance of a manager
AgeSignalsManager ageSignalsManager =
AgeSignalsManagerFactory.create(ApplicationProvider.getApplicationContext());
// Request an age signals check
ageSignalsManager
.checkAgeSignals(AgeSignalsRequest.builder().build())
.addOnSuccessListener(
ageSignalsResult -> {
// Store the install ID for later...
String installId = ageSignalsResult.installId();
if (ageSignalsResult
.userStatus()
.equals(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED)) {
// Disallow access ...
} else {
// Do something else if the user is SUPERVISED, VERIFIED, etc.
}
});
Sygnały dotyczące wieku są przechowywane przez Google Play na urządzeniu dla każdego użytkownika. Gdy użytkownik z nadzorowanym kontem Google osiągnie wiek, który kwalifikuje go do nowej kategorii wiekowej, Google Play automatycznie zaktualizuje zapisane sygnały wieku tego użytkownika w ciągu 2–8 tygodni od jego urodzin.
(Opcjonalnie) Otrzymywanie niestandardowych przedziałów wiekowych
Domyślne zakresy wiekowe zwracane przez interfejs API w odpowiednich jurysdykcjach i regionach to 0–12, 13–15, 16–17 i 18+. W przyszłości mogą one ulec zmianie w zależności od lokalnych wymagań.
Możesz też dostosować zakresy wieku do minimalnych progów wiekowych aplikacji, podając te progi na stronie Sygnały dotyczące wieku w Konsoli Google Play. Interfejs Age Signals API zwraca dostosowane przedziały wiekowe. Jeśli na przykład podasz minimalny wiek 9, 15 i 17 lat, 14-letni użytkownik będzie mieścił się w przedziale wiekowym 10–15 lat. Minimalny wiek musi różnić się o co najmniej 2 lata i można go zmienić raz w roku.
Aby dostosować zakresy wieku zwracane przez interfejs Age Signals API, możesz podać minimalne progi wiekowe dla swojej aplikacji:
- Otwórz stronę Sygnały dotyczące wieku w Konsoli Play.
- Na karcie Minimalny wiek użytkownika aplikacji wpisz maksymalnie 3 minimalne progi wiekowe dla swojej aplikacji.
- Kliknij Zapisz.
Odpowiedzi na sygnały dotyczące wieku
Odpowiedź interfejsu Play Age Signals API (w wersji beta) zawiera te pola i wartości: Wartości mogą ulec zmianie. Jeśli chcesz uzyskać najnowsze wartości, poproś o odpowiedź z API po otwarciu aplikacji. Odpowiadasz za dostarczanie treści dostosowanych do wieku użytkowników na podstawie tych sygnałów.
Pole odpowiedzi | Wartości | Opis |
---|---|---|
userStatus |
ZWERYFIKOWANO | Użytkownik ma ukończone 18 lat. Google potwierdził wiek użytkownika za pomocą uzasadnionej komercyjnie metody, takiej jak dokument tożsamości wydany przez organ państwowy, karta kredytowa lub szacowanie wieku na podstawie twarzy. |
NADZOROWANE | Użytkownik ma nadzorowane konto Google zarządzane przez rodzica, który określa jego wiek.
Użyj ikon ageLower i ageUpper , aby określić przedział wiekowy użytkownika. |
|
SUPERVISED_APPROVAL_PENDING | Użytkownik ma nadzorowane konto Google, a rodzic sprawujący nad nim nadzór nie zatwierdził jeszcze co najmniej jednej oczekującej ważnej zmiany.
Użyj ikon ageLower i ageUpper , aby określić przedział wiekowy użytkownika.
Użyj ikony mostRecentApprovalDate , aby określić ostatnią zatwierdzoną znaczącą zmianę. |
|
SUPERVISED_APPROVAL_DENIED | Użytkownik ma nadzorowane konto Google, a rodzic sprawujący nad nim nadzór odrzucił zatwierdzenie co najmniej jednej istotnej zmiany.
Użyj ikon ageLower i ageUpper , aby określić przedział wiekowy użytkownika.
Użyj ikony mostRecentApprovalDate , aby określić ostatnią zatwierdzoną znaczącą zmianę. |
|
NIEZNANY | Użytkownik nie jest zweryfikowany ani objęty nadzorem w odpowiednich jurysdykcjach i regionach. Mogą to być użytkownicy, którzy ukończyli 18 lat lub nie. Aby uzyskać sygnał wieku z Google Play, poproś użytkownika o odwiedzenie Sklepu Play w celu rozwiązania problemu ze statusem. | |
Puste (pusta wartość) | Wszyscy pozostali użytkownicy zwracają tę wartość. | |
ageLower |
0–18 | Dolna granica (włącznie) zakresu wieku nadzorowanego użytkownika.
Użyj parametrów ageLower i ageUpper , aby określić przedział wiekowy użytkownika. |
Pusta (pusta wartość) |
Pole userStatus jest nieznane lub puste. |
|
ageUpper |
2–18 | Górna granica (włącznie) zakresu wieku nadzorowanego użytkownika.
Użyj parametrów ageLower i ageUpper , aby określić przedział wiekowy użytkownika. |
Puste (pusta wartość) | Albo userStatus jest nadzorowany, a rodzic użytkownika potwierdził, że ma on ukończone 18 lat.
lub userStatus jest zweryfikowany, nieznany lub pusty. |
|
mostRecentApprovalDate |
Datestamp | effective from data ostatniej zatwierdzonej znaczącej zmiany. Gdy aplikacja jest instalowana, używana jest data ostatniej istotnej zmiany przed instalacją. |
Puste (pusta wartość) | Albo userStatus jest nadzorowany i nie przesłano żadnych znaczących zmian.
Lub userStatus jest zweryfikowany, nieznany lub pusty. |
|
installID |
Alfanumeryczny identyfikator wygenerowany przez Google Play. | Identyfikator przypisany do instalacji użytkowników nadzorowanych przez Google Play, który służy do powiadamiania Cię o cofnięciu zatwierdzenia aplikacji. Zapoznaj się z dokumentacją dotyczącą cofniętych zatwierdzeń aplikacji. |
Puste (pusta wartość) | userStatus jest zweryfikowany, nieznany lub pusty. |
Obsługa kodów błędów interfejsu API
Jeśli Twoja aplikacja wyśle żądanie do interfejsu Play Age Signals API (w wersji beta) i wywołanie się nie powiedzie, otrzyma kod błędu. Błędy te mogą występować z różnych powodów, np. z powodu nieaktualnej aplikacji Sklep Play.
Strategia ponawiania
W sytuacjach, gdy użytkownik jest w sesji, zalecamy wdrożenie strategii ponawiania z maksymalną liczbą prób jako warunkiem zakończenia, aby błąd jak najmniej zakłócał działanie aplikacji.
Wartość numeryczna kodu błędu | Kod błędu | Opis | Można ponowić |
---|---|---|---|
-1 | API_NOT_AVAILABLE | Interfejs Play Age Signals API jest niedostępny. Wersja aplikacji Sklep Play zainstalowana na urządzeniu może być stara. Możliwe rozwiązanie
|
Tak |
-2 | PLAY_STORE_NOT_FOUND | Na urządzeniu nie znaleziono aplikacji Sklep Play. Poproś użytkownika o zainstalowanie lub włączenie Sklepu Play. | Tak |
-3 | NETWORK_ERROR | Nie znaleziono dostępnej sieci. Poproś użytkownika o sprawdzenie połączenia. | Tak |
-4 | PLAY_SERVICES_NOT_FOUND | Usługi Play są niedostępne lub ich wersja jest zbyt stara. Poproś użytkownika o zainstalowanie, zaktualizowanie lub włączenie Usług Play. | Tak |
-5 | CANNOT_BIND_TO_SERVICE | Nie udało się powiązać z usługą w Sklepie Play. Może to być spowodowane zainstalowaniem na urządzeniu starej wersji Sklepu Play lub przepełnieniem pamięci urządzenia. Poproś użytkownika o zaktualizowanie aplikacji Sklep Play. Podejmij ponowną próbę ze wzrastającym czasem do ponowienia. | Tak |
-6 | PLAY_STORE_VERSION_OUTDATED | Aplikacja Sklep Play wymaga aktualizacji. Poproś użytkownika o zaktualizowanie aplikacji Sklep Play. | Tak |
-7 | PLAY_SERVICES_VERSION_OUTDATED | Usługi Play wymagają aktualizacji. Poproś użytkownika o zaktualizowanie Usług Play. | Tak |
-8 | CLIENT_TRANSIENT_ERROR | Na urządzeniu klienta wystąpił przejściowy błąd. Wdróż strategię ponawiania z maksymalną liczbą prób jako warunkiem zakończenia. Jeśli problem nadal występuje, poproś użytkownika o ponowną próbę później. | Tak |
-9 | APP_NOT_OWNED | Aplikacja nie została zainstalowana przez Google Play. Poproś użytkownika o pobranie aplikacji z Google Play. | Nie |
-100 | INTERNAL_ERROR | Nieznany błąd wewnętrzny. Wdróż strategię ponawiania z maksymalną liczbą prób jako warunkiem zakończenia. Jeśli problem nadal występuje, poproś użytkownika o ponowną próbę później. Jeśli testy stale się nie powiodą, skontaktuj się z zespołem pomocy Google Play dla deweloperów, w temacie podaj „Play Age Signals API” i podaj jak najwięcej szczegółów technicznych (np. raport o błędach). | Nie |