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

OpenUPM-CLI

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

openupm add com.google.play.review

OpenUPM

  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.

Importowanie z GitHuba

  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.

using Google.Play.Review;  // 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 launchFlowOperation.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.