Z tego przewodnika dowiesz się, jak zintegrować opinie w aplikacji za pomocą Unity. Dostępne są osobne przewodniki po integracji dla Kotlina lub Javy, kodu natywnego i Unreal Engine.
Omówienie pakietu SDK Unity
Interfejs Play In-App Review API należy do rodziny pakietów SDK podstawowej biblioteki Play. Interfejs API dla Unity udostępnia klasę ReviewManager, która umożliwia wysyłanie żądań i uruchamianie procesu za pomocą metod RequestReviewFlow i LaunchReviewFlow. Po przesłaniu prośby aplikacja może sprawdzić jej stan za pomocą metody 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.reviewOpenUPM
Otwórz ustawienia menedżera pakietów, wybierając w menu Unity opcję Edit > Project Settings > Package Manager (Edytuj > Ustawienia projektu > Menedżer pakietów).
Dodaj OpenUPM jako rejestr o określonym zakresie 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.reviewOtwórz menu menedżera pakietów, wybierając w Unity opcję Okno > Menedżer pakietów.
W menu zakresu menedżera wybierz Moje rejestry.
Wybierz pakiet wtyczki Google Play Integrity do Unity z listy pakietów i naciśnij Zainstaluj.
Importuj z GitHuba
Pobierz najnowszą wersję
.unitypackagez GitHuba.Zaimportuj plik
.unitypackage, wybierając opcję menu Unity Zasoby > Importuj pakiet > Pakiet niestandardowy i importując wszystkie elementy.
Tworzenie obiektu ReviewManager
Utwórz instancję ReviewManager, która obsługuje komunikację między aplikacją a interfejsem Google Play API.
using Google.Play.Review;
// Create instance of ReviewManager
private ReviewManager _reviewManager;
// ...
_reviewManager = new ReviewManager();
Przesyłanie żądania obiektu ReviewInfo
Postępuj zgodnie z wytycznymi dotyczącymi momentów, w których warto prosić o opinie w aplikacji, aby określić odpowiednie punkty w wzorcu przeglądania, w których można poprosić użytkownika o opinię (np. gdy użytkownik zamknie ekran podsumowania na końcu poziomu w grze). Gdy aplikacja zbliży się do jednego z tych punktów, użyj instancji ReviewManager, aby utworzyć operację asynchroniczną, jak 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 wystawiania opinii w aplikacji. W przykładzie wywołanie jest wykonywane wewnątrz współprogramu, aby wykonać operację asynchroniczną (nie blokuje to wątku głównego). Wywołanie jest wykonywane asynchronicznie, więc może potrwać do kilku sekund. Aplikacja powinna je wykonać, zanim użytkownik dotrze do punktu, w którym chcesz wyświetlić prośbę o opinię.
Uruchamianie procesu wystawiania opinii w aplikacji
Gdy aplikacja otrzyma instancję PlayReviewInfo, może uruchomić proces wystawiania oceny w aplikacji. Obiekt PlayReviewInfo jest ważny tylko przez ograniczony czas, więc aplikacja nie powinna zbyt długo czekać z uruchomieniem procesu.
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
Przetestuj proces opinii w aplikacji, aby sprawdzić, czy integracja działa prawidłowo.