Integracja opinii w aplikacji (Unity)

Z tego przewodnika dowiesz się, jak zintegrować opinie w aplikacji z użyciem Unity. Istnieją oddzielne przewodniki integracji, jeśli używasz Kotlin lub Java, kodu natywnego lub Unreal Engine.

Omówienie pakietu Unity SDK

Interfejs Play In-App Review API należy do rodziny pakietu SDK podstawowej biblioteki Play. Interfejs API Unity udostępnia klasę ReviewManager, która umożliwia żądanie i uruchamianie procesu za pomocą metod RequestReviewFlowLaunchReviewFlow. Po przesłaniu prośby aplikacja może sprawdzić jej stan za pomocą ReviewErrorCode.

Konfigurowanie środowiska programistycznego

Jeśli masz zainstalowany interfejs wiersza poleceń OpenUPM, możesz zainstalować rejestr OpenUPM za pomocą tego polecenia:

openupm add com.google.play.review
  1. Otwórz ustawienia menedżera pakietów, klikając opcję menu Unity Edytuj > Ustawienia projektu > Menedżer pakietów.

  2. Dodaj OpenUPM jako ograniczony rejestr do okna Menedżera pakietów:

    Name: package.openupm.com
    URL: https://package.openupm.com
    Scopes: com.google.external-dependency-manager
      com.google.play.common
      com.google.play.core
      com.google.play.review
    
  3. Otwórz menu menedżera pakietów, wybierając w menu Unity opcję Okno > Menedżer pakietów.

  4. W menu zakresu menedżera wybierz Moje rejestry.

  5. Na liście pakietów wybierz pakiet Google Play Integrity Plugin for Unity i kliknij Zainstaluj.

  1. Pobierz najnowszą wersję .unitypackage z GitHuba.

  2. Zaimportuj plik .unitypackage, wybierając opcję menu Unity Komponenty > Zaimportuj pakiet > Pakiet niestandardowy i importując wszystkie elementy.

Tworzenie klasy ReviewManager

Utwórz instancję interfejsu ReviewManager, który obsługuje komunikację między aplikacją a interfejsem API Google Play.

// Create instance of ReviewManager
private ReviewManager _reviewManager;
// ...
_reviewManager = new ReviewManager();

Prośba o obiekt ReviewInfo

Aby określić odpowiednie momenty w przebiegu użytkownika aplikacji, w których należy poprosić o opinię (np. gdy użytkownik zamknie ekran podsumowania na końcu poziomu w grze), postępuj zgodnie z wskazówkami dotyczącymi czasu wysyłania prośby o opinię w aplikacji. Gdy aplikacja zbliży się do jednego z tych punktów, użyj instancji ReviewManager, aby utworzyć asynchroniczną operację, jak pokazano w tym przykładzie:

var requestFlowOperation = _reviewManager.RequestReviewFlow();
yield return requestFlowOperation;
if (requestFlowOperation.Error != ReviewErrorCode.NoError)
{
    // Log error. For example, using requestFlowOperation.Error.ToString().
    yield break;
}
_playReviewInfo = requestFlowOperation.GetResult();

Jeśli wywołanie się powiedzie, interfejs API zwróci obiekt PlayReviewInfo, którego aplikacja potrzebuje do uruchomienia procesu weryfikacji w aplikacji. W tym przykładzie wywołanie jest wykonywane w współwyzwaniu, aby wykonać operację asynchroniczną (nie blokuje to wątku głównego). Wywołanie jest asynchroniczne, więc może potrwać kilka sekund. Aplikacja powinna wykonać to wywołanie przed dotarciem do punktu w trakcie ścieżki użytkownika, w którym chcesz wyświetlić opinię.

Uruchamianie procesu weryfikacji w aplikacji

Gdy aplikacja otrzyma instancję PlayReviewInfo, może uruchomić proces weryfikacji w aplikacji. Pamiętaj, że obiekt PlayReviewInfo jest ważny tylko przez ograniczony czas, dlatego aplikacja nie powinna zbyt długo czekać z uruchomieniem przepływu.

var launchFlowOperation = _reviewManager.LaunchReviewFlow(_playReviewInfo);
yield return launchFlowOperation;
_playReviewInfo = null; // Reset the object
if (launchFlowOperation.Error != ReviewErrorCode.NoError)
{
    // Log error. For example, using requestFlowOperation.Error.ToString().
    yield break;
}
// The flow has finished. The API does not indicate whether the user
// reviewed or not, or even whether the review dialog was shown. Thus, no
// matter the result, we continue our app flow.

Dalsze kroki

Sprawdź proces weryfikacji w aplikacji, aby upewnić się, że integracja działa prawidłowo.