Uygulama içi yorumları entegre edin (Unity)

Bu kılavuzda, Unity kullanarak uygulama içi yorumları uygulamanıza nasıl entegre edeceğiniz açıklanmaktadır. Kotlin veya Java, yerel kod ya da Unreal Engine kullanıyorsanız ayrı entegrasyon kılavuzları vardır.

Unity SDK'ya genel bakış

Play In-App Review API, Play Core SDK ailesinin bir parçasıdır. Unity için API, ReviewManager sınıfını kullanarak RequestReviewFlow ve LaunchReviewFlow yöntemleriyle akışı isteyip başlatmanıza olanak tanır. İstek gönderildikten sonra uygulamanız ReviewErrorCode kullanarak isteğin durumunu kontrol edebilir.

Geliştirme ortamınızı kurma

OpenUPM-CLI

OpenUPM CLI yüklüyse OpenUPM kayıt defterini aşağıdaki komutla yükleyebilirsiniz:

openupm add com.google.play.review

OpenUPM

  1. Paket yöneticisi ayarlarını açmak için Unity menü seçeneği olan Edit > Project Settings > Package Manager'ı (Düzenle > Proje Ayarları > Paket Yöneticisi) seçin.

  2. OpenUPM'yi Paket Yöneticisi penceresine kapsamlı kayıt defteri olarak ekleyin:

    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. Unity menü seçeneği Window > Package Manager'ı belirleyerek paket yöneticisi menüsünü açın.

  4. Yönetici kapsamı açılır listesini Kayıtlarım'ı seçecek şekilde ayarlayın.

  5. Paket listesinden Unity için Google Play Integrity eklentisi paketini seçin ve Yükle'ye basın.

GitHub'dan içe aktarma

  1. GitHub'dan en son .unitypackage sürümünü indirin.

  2. .unitypackage dosyasını, Unity menü seçeneği Öğeler > Paketi içe aktar > Özel Paket'i belirleyip tüm öğeleri içe aktararak içe aktarın.

ReviewManager'ı oluşturma

Uygulamanız ile Google Play API arasındaki iletişimi yöneten bir ReviewManager örneği oluşturun.

using Google.Play.Review;

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

ReviewInfo nesnesi isteğinde bulunma

Kullanıcıdan yorum istemek için uygulamanızın kullanıcı işlemleri akışında iyi noktaları belirlemek üzere uygulama içi yorumları ne zaman isteyeceğinizle ilgili yönergeleri uygulayın (ör. kullanıcı, bir oyunda seviyenin sonundaki özet ekranını kapattıktan sonra). Uygulamanız bu noktalardan birine yaklaştığında, aşağıdaki örnekte gösterildiği gibi, eşzamansız bir işlem oluşturmak için ReviewManager örneğini kullanın:

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();

Çağrı başarılı olursa API, uygulama içi yorum akışını başlatmak için uygulamanızın ihtiyaç duyduğu PlayReviewInfo nesnesini döndürür. Örnekte, eş zamansız işlemi gerçekleştirmek için eş yordam içinde arama yapılır (bu, ana iş parçacığını engellemez). Çağrı eşzamansız olarak yapıldığından birkaç saniye sürebilir. Bu nedenle, uygulamanız, kullanıcı akışınızda uygulama içi yorumu göstermek istediğiniz noktaya ulaşmadan önce çağrıyı yapmalıdır.

Uygulama içi yorum akışını başlatma

Uygulamanız PlayReviewInfo örneğini aldıktan sonra uygulama içi yorum akışını başlatabilir. PlayReviewInfo nesnesinin yalnızca sınırlı bir süre geçerli olduğunu unutmayın. Bu nedenle, uygulamanız bir akışı başlatmadan önce çok uzun süre beklememelidir.

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.

Sonraki adımlar

Entegrasyonunuzun doğru şekilde çalıştığını doğrulamak için uygulamanızın uygulama içi yorum akışını test edin.