Pakiet SDK User Messaging Platform (UMP) od Google to narzędzie do zarządzania prywatnością i wyświetlania wiadomości, które pomaga zarządzać wyborami dotyczącymi prywatności. Więcej informacji znajdziesz w artykule Prywatność i wyświetlanie wiadomości.
Tworzenie typu wiadomości
Twórz wiadomości dla użytkowników, korzystając z jednego z dostępnych typów wiadomości na karcie Prywatność i wyświetlanie wiadomości na koncie AdMob. Pakiet SDK UMP próbuje wyświetlić wiadomość dotyczącą prywatności utworzoną na podstawie identyfikatora aplikacji AdMob ustawionego w projekcie.
Więcej informacji znajdziesz w artykule Prywatność i wyświetlanie wiadomości.
Uzyskiwanie informacji o zgodzie użytkownika
Przy każdym uruchomieniu aplikacji należy prosić o aktualizację informacji o zgodzie użytkownika za pomocą funkcji Update(). To żądanie sprawdza te kwestie:
- Czy wymagana jest zgoda. Na przykład zgoda jest wymagana po raz pierwszy lub poprzednia decyzja o zgodzie wygasła.
- Czy wymagany jest punkt wejścia opcji prywatności. Niektóre wiadomości dotyczące prywatności wymagają, aby aplikacje umożliwiały użytkownikom modyfikowanie opcji prywatności w dowolnym momencie.
void Start()
{
// Create a ConsentRequestParameters object.
ConsentRequestParameters requestParameters = new ConsentRequestParameters();
// Request an update of the user's consent information.
ConsentInformation.Update(requestParameters, OnConsentInfoUpdated);
}Wczytywanie i wyświetlanie formularza wiadomości dotyczącej prywatności
Po otrzymaniu najbardziej aktualnego stanu zgody wywołaj funkcję LoadAndShowConsentFormIfRequired(), aby wczytać formularze wymagane do uzyskania zgody użytkownika. Po wczytaniu formularze są wyświetlane natychmiast.
ConsentForm.LoadAndShowConsentFormIfRequired((FormError formError) =>
{
if (formError != null)
{
// Consent gathering failed.
Debug.LogError("Error loading/showing consent form: " + formError.Message);
}
// ...
});Opcje prywatności
Niektóre formularze wiadomości dotyczących prywatności są wyświetlane z punktu wejścia opcji prywatności renderowanego przez wydawcę, co umożliwia użytkownikom zarządzanie opcjami prywatności w dowolnym momencie. Aby dowiedzieć się więcej o tym, która wiadomość wyświetla się użytkownikom w punkcie wejścia opcji prywatności , zapoznaj się z artykułem Dostępne typy wiadomości dla użytkowników.
Sprawdzanie, czy wymagany jest punkt wejścia opcji prywatności
Po wywołaniu funkcji Update() sprawdź
PrivacyOptionsRequirementStatus, aby określić, czy w aplikacji wymagany jest punkt wejścia opcji prywatności. Jeśli jest wymagany, dodaj do aplikacji widoczny i interaktywny element interfejsu, który wyświetla formularz opcji prywatności. Jeśli punkt wejścia opcji prywatności nie jest wymagany, skonfiguruj element interfejsu tak, aby był niewidoczny i nieinteraktywny.
void UpdatePrivacyButton()
{
if (_privacyButton != null)
{
// Enable the button only if a privacy options entry point is required.
_privacyButton.interactable =
ConsentInformation.PrivacyOptionsRequirementStatus == PrivacyOptionsRequirementStatus.Required;
}
}Pełną listę stanów wymagania opcji prywatności znajdziesz w artykule
ConsentInformation.PrivacyOptionsRequirementStatus.
Wyświetlanie formularza opcji prywatności
Gdy użytkownik wejdzie w interakcję z Twoim elementem, wyświetl formularz opcji prywatności:
public void ShowPrivacyOptionsForm()
{
ConsentForm.ShowPrivacyOptionsForm((FormError showError) =>
{
if (showError != null)
{
Debug.LogError("Error showing privacy options form: " + showError.Message);
}
});
}Wysyłanie prośby o reklamy ze zgodą użytkownika
Zanim wyślesz prośbę o reklamy, użyj
CanRequestAds(), aby sprawdzić, czy masz
zgodę użytkownika:
ConsentInformation.CanRequestAds()
Oto miejsca, w których możesz sprawdzić, czy możesz wysyłać prośby o reklamy podczas zbierania zgody:
- Po tym, jak pakiet SDK UMP uzyska zgodę w bieżącej sesji.
- Natychmiast po wywołaniu funkcji
Update(). Pakiet SDK UMP mógł uzyskać zgodę w poprzedniej sesji aplikacji.
Jeśli podczas procesu zbierania zgody wystąpi błąd, sprawdź, czy możesz wysyłać prośby o reklamy. Pakiet SDK UMP używa stanu zgody z poprzedniej sesji aplikacji.
Zapobieganie zbędnym żądaniom reklamy
Gdy sprawdzasz
CanRequestAds() po zebraniu zgody i po wywołaniu funkcji
Update(), upewnij się, że logika zapobiega zbędnym prośbom o reklamy, które
mogą spowodować, że oba sprawdzenia zwrócą wartość true. Na przykład za pomocą zmiennej logicznej.
Testowanie
Jeśli chcesz przetestować integrację w aplikacji podczas jej tworzenia, wykonaj te czynności, aby programowo zarejestrować urządzenie testowe. Zanim opublikujesz aplikację, usuń kod, który ustawia te identyfikatory urządzeń testowych.
- Wywołaj funkcję
Update(). Sprawdź dane wyjściowe logu pod kątem wiadomości podobnej do tego przykładu, która pokazuje identyfikator urządzenia i sposób dodania go jako urządzenia testowego:
Android
Use new ConsentDebugSettings.Builder().addTestDeviceHashedId("33BE2250B43518CCDA7DE426D04EE231") to set this as a debug device.iOS
<UMP SDK>To enable debug mode for this device, set: UMPDebugSettings.testDeviceIdentifiers = @[2077ef9a63d2b398840261c8221a0c9b]Skopiuj identyfikator urządzenia testowego do schowka.
Zmodyfikuj kod, aby wywołać funkcję
DebugGeography.TestDeviceHashedIdsi przekazać listę identyfikatorów urządzeń testowych.void Start() { var debugSettings = new ConsentDebugSettings { TestDeviceHashedIds = new List<string> { "TEST-DEVICE-HASHED-ID" } }; // Create a ConsentRequestParameters object. ConsentRequestParameters request = new ConsentRequestParameters { ConsentDebugSettings = debugSettings, }; // Check the current consent information status. ConsentInformation.Update(request, OnConsentInfoUpdated); }
Wymuszanie lokalizacji geograficznej
Pakiet SDK UMP umożliwia testowanie działania aplikacji tak, jakby urządzenie
znajdowało się w różnych regionach, np. w Europejskim Obszarze Gospodarczym (EOG),
Wielkiej Brytanii i Szwajcarii, za pomocą funkcji
DebugGeography. Pamiętaj, że ustawienia debugowania działają tylko na urządzeniach testowych.
void Start()
{
var debugSettings = new ConsentDebugSettings
{
// Geography appears as in EEA for debug devices.
DebugGeography = DebugGeography.EEA,
TestDeviceHashedIds = new List<string>
{
"TEST-DEVICE-HASHED-ID"
}
};
// Create a ConsentRequestParameters object.
ConsentRequestParameters request = new ConsentRequestParameters
{
ConsentDebugSettings = debugSettings,
};
// Check the current consent information status.
ConsentInformation.Update(request, OnConsentInfoUpdated);
}
Resetowanie stanu zgody użytkownika
Podczas testowania aplikacji za pomocą pakietu SDK UMP może się okazać przydatne zresetowanie stanu pakietu SDK, aby można było symulować pierwsze zainstalowanie aplikacji przez użytkownika.
Pakiet SDK udostępnia do tego metodę Reset().
ConsentInformation.Reset();
Przykłady w GitHub
Pełny przykład integracji z pakietem SDK UMP opisanej na tej stronie znajdziesz w aplikacji HelloWorld.