Recall API'si

Recall API'si, oyunların Google sunucularında geri çağırma jetonları depolayarak PGS kullanıcıları ile oyun içi hesapları arasındaki bağlantıları yönetmesini sağlar. Aşağıda, Recall API'nin nasıl kullanılabileceğine dair örnek bir senaryo verilmiştir.

  1. Bir kullanıcı, oyun oynarken geliştiricinin kullanıcı ilerlemesini izlemek için bir kimlik sistemi vardır ve kullanıcıların oyununa giriş yapmak için PGS'yi diğer kimlik doğrulama yöntemleriyle paralel olarak kullanır. Bu örnekte, bir kullanıcı Laura PGS hesabına giriş yapar ve geliştiricinin Racer94 kimlik sistemiyle oyun içi hesap oluşturur. Kullanıcı oyunu oynarken, geliştiricinin oyun sunucusu ilerlemeyi senkronize eder.

    Kullanıcı PGS ve oyun içi bir hesapla giriş yapmıştır.

  2. Ayrıca geliştirici, Google'a kullanıcının oyun içi hesabına karşılık gelen bir geri çağırma jetonu kaydeder. Google, bu geri çağırma jetonunu kullanıcının PGS profiline göre otomatik olarak depolar.

    Oyun sunucusu, geri çağırma jetonunu Google
sunucularıyla saklar.

  3. Kullanıcı artık oyunu PC'de GPG'de ilk kez oynamaya karar verir. Kullanıcı, PGS hesabıyla otomatik olarak oturum açar ve oyun istemcisi, bu PGS kullanıcısının ilerleme durumu olup olmadığını kontrol eder. Oyun sunucusu daha sonra bu PGS hesabı için herhangi bir jeton olup olmadığını görmek için Google'ı sorgular. Mevcut olduğu için Google geri çağırma jetonunu geri gönderir ve oyun sunucusu da bu jetonu kullanıcının ilişkili Racer94 hesabını bulmak ve ilerleme durumunu geri yüklemek için kullanır. PGS ile oturum açmak sorunsuz bir deneyim olduğundan, kullanıcının ilerlemesi uygulama tarafından kullanıcı adı veya şifre girmesine gerek kalmadan geri yüklenir. Ayrıca geliştirici, mevcut kimlik sistemleriyle PGS oturum açma özelliğini kullanabilir ve oyuncu ilerleme durumu ile PGS hesabı arasındaki bağlantıyı depolaması için Google'a güvenebilir.

    Oyun sunucusu, geri çağırma
jetonuyla ilerlemeyi geri yükler

Yukarıdaki örnekte görüldüğü gibi, Recall API'si tarafından gerçekleştirilen iki ana işlem vardır: bir kullanıcı oyun içi hesaplardan biriyle giriş yaptığında jetonu Google ile saklama ve oyun içi hesaplarını geri yüklemek için bir kullanıcı için jetonu alma.

Recall API'si, geri çağırma jetonlarına ek olarak kardinalite kısıtlamalarını uygulamak için oyun içi hesaba karşılık gelen karakter olarak bilinen sabit bir tanımlayıcı gerektirir. Kişiyi, kullanıcının kimlik sistemindeki oyun içi hesabını temsil eden etiket, geri çağırma jetonunu ise kullanıcının oyun içi hesabını oyuna geri yüklemek için kullanılan bir anahtar olarak düşünebilirsiniz. Karakter ve jeton değerleri farklı PGS projelerinde tekrar kullanılmamalıdır. Ayrıca, geri çağırma jetonları zaman içinde değişebilse de bir karakter, kullanıcının oyun içi hesabına göre sabit olmalıdır.

Kardinalite kuralları

Recall API'si, PGS profilleri ile oyun içi hesaplar arasında bire bir ilişki (kardinalite kuralları olarak adlandırılır) uygular. Bu durumda, bir karakter yalnızca bir PGS profiline ve bir PGS profili yalnızca bir karaktere bağlanabilir. Geri çağırma jetonları zaman içinde değişebileceği için karakter, oyun içi hesap için sabit bir tanımlayıcı olarak kullanılır.

PGS profiline bağlı karakterler de zaman içinde değiştirilebilir (çünkü farklı oyun içi hesaplar PGS profiline bağlıdır).

Geri çağırma jetonlarını depolama ve almayla ilgili ayrıntılı teknik akışlar

Bu bölümde, geri çağırma jetonlarını depolarken ve alırken Google sunucuları ile oyun istemcisi ile sunucular arasındaki teknik akış ele alınmaktadır.

1. Adım: PGS Kullanıcısı'nda oturum açın ve oturum kimliğini alın

Oyun, PGS SDK'sını başlatır ve kullanıcının PGS ile oturum açmasını sağlamaya çalışır.

Kullanıcı PGS ile oturum açar

Kullanıcının oturum açtığını varsayarsak oyun istemcisindeki Oyunlar SDK'sından bir oturum kimliği ve Google'ın OAuth arka ucundan OAuth 2.0 jetonu isteyin. Oturum kimliği ve OAuth 2.0 jetonları, Google Games arka ucuyla iletişim kurmak için kullanılır.

Geliştirici, bir oturum kimliği
istiyor

2. Adım: Kullanılabilir geri çağırma jetonlarını alın

PGS kullanıcısının hesabıyla ilişkili herhangi bir geri çağırma jetonu isteyin. Jeton varsa 3a Adımına ilerleyin ve ilerlemeyi geri yükleyin. Aksi takdirde, bu yeni bir kullanıcıysa ve jetonu yoksa 3b adımına geçin ve yeni bir jeton depolayın.

Geliştirici geri çağırma
jetonunu alır

3a Adımı: Jeton varsa ilerlemeyi geri yükleyin

Jeton varsa jetonu alın, şifresini çözün ve kullanıcı verilerini geri yükleyin.

Geliştirici, geri çağırma jetonundan
verileri geri yükler.

3b Adımı: Jeton yoksa bir jeton depolayın

Herhangi bir jeton bulunmadığından ilerleme durumu geri yüklenmez. Kullanıcı, geliştiricinin kimlik sistemiyle oturum açar veya yoksa yeni bir hesap oluşturur. Not: Bu, PGS ile değil (daha önce yapılmış) PGS dışında bir geliştiricinin kimlik sistemiyle oturum açmak için kullanılmaz.

Kullanıcı oyun içi hesabıyla
oturum açar.

Kullanıcının oyun içi hesabını kodlayan şifrelenmiş bir geri çağırma jetonu oluşturun ve bu jetonu oturum kimliği ve OAuth 2.0 jetonuyla birlikte Google'a gönderin. Bu noktada Google, gönderilen geri çağırma jetonu ile oyuncunun PGS hesabı arasında bir ilişkilendirme oluşturur.

Geliştirici geri çağırma jetonunu depolar

Sonraki adımlar

Recall API'yi istemci ve oyun sunucunuzla entegre etmek için bu kılavuzu uygulayın.