Kendi hesap sisteminizi kullanmaya devam ederken kullanıcıları oyununuzda sorunsuz bir şekilde oturum açtırın. Play Games Hizmetleri Recall API'leri sayesinde oyun içi hesapları bir Google Play Games Hizmetleri hesabına bağlayabilirsiniz. Ardından, bir kullanıcı oyununuzu farklı cihazlarda (veya oyununuzu yeniden yükledikten sonra aynı cihazda) oynadığında bağlı oyun içi hesabı sorgular ve oturum açma akışını kolaylaştırırsınız.
Android Recall API'leriyle entegrasyon yaptıysanız bu Recall API'leri tanıdık gelecektir. Play Games Hizmetleri Geri Çağırma ile yapılan sunucu tarafı entegrasyonlar hem Android hem de PC'de aynı olduğundan PC oyunları tarafından yeniden kullanılabilir.
Ön koşullar
SDK kurulumunu tamamlayın.
Play Games Hizmetleri Geri Çağırma API'sine genel bakışı okuyun.
Play Console'da Google Play Oyun Hizmetleri kurulumunu tamamlayın.
1. adım: Play Games Hizmetleri proje kimliğinizi manifest dosyasına ekleyin
Play Console'da Play Games Hizmetleri kurulumunu tamamladıktan sonra oyununuz artık ilişkili bir Play Games Hizmetleri proje kimliğine sahip olur. Play Console'daki Play Games Hizmeti'nin Yapılandırma sayfasında bulunan bu proje kimliğini kullanarak oyununuzun manifest.xml
değerini güncelleyin.
Örnek manifest.xml
içerikleri:
<?xml version="1.0" encoding="utf-8"?>
<Manifest version="1">
<Application>
<PackageName>com.example.package</PackageName>
<PlayGamesServices>
<ProjectId>123456789</ProjectId>
</PlayGamesServices>
</Application>
</Manifest>
2. Adım: Oturum açarken Recall erişimi isteyin
Oyununuz bir oturum açma akışını (ör. oyun içi hesap ekleme) işlediğinde GamesRecallClient::RequestRecallAccess()
kullanarak geri çağırma erişimi isteyin.
Bu çağrı, arka uç tarafından oyun içi hesaplarınızı bir Play Games Hizmetleri kullanıcısıyla bağlamak ve bağlantılarını kaldırmak için Google'a sunucu tarafı çağrıları yapmak üzere kullanılan bir oturum kimliği döndürür.
auto promise = std::make_shared<std::promise<RecallAccessResult>>();
games_recall_client.RequestRecallAccess(params, [promise](RecallAccessResult result) {
promise->set_value(std::move(result));
});
auto recall_access_result = promise->get_future().get();
if (recall_access_result.ok()) {
auto recall_session_id = recall_access_result.value().recall_session_id;
// Pass the recall session ID to your backend game server so it can query
// for an existing linked in-game account.
// - If you discover an existing linked in-game account, continue to sign-in
// the in-game account. This provides a seamless cross-device sign-in
// experience.
// - If there is not an existing linked in-game account, when the user
// completes the sign-in using your in-game account system record the
// account linking with Play Games Services Recall. This helps to provide
// a seamless cross-device sign-in experience when the user returns on a
// different device or after re-installing your game on the same device.
} else {
// Handle the error
}
3. Adım: Hatırlatma oturumu kimliğini işleyin
Oyununuz Recall oturum kimliğini aldıktan ve arka uç oyun sunucunuza aktardıktan sonra Play Games sunucu tarafı REST API'lerini kullanarak şunları yapabilirsiniz:
recall.retrieveTokens
kullanarak mevcut bağlı oyun içi hesapları sorgulamakrecall.linkPersona
simgesini kullanarak bağlı oyun içi hesapları ekleme veya güncellemerecall.unlinkPersona
simgesini kullanarak bağlı oyun içi hesapları silme
Sunucu tarafı entegrasyonunu kapsayan daha ayrıntılı bir kılavuz için Recall API'yi oyun sunucunuzda kullanma ile ilgili dokümanları inceleyin.