Login pengguna ke game Anda dengan lancar sambil terus menggunakan sistem akun Anda sendiri. Dengan Play Game Services Recall API, Anda dapat menautkan akun dalam game dengan akun Layanan game Google Play. Kemudian, saat pengguna memainkan game Anda di berbagai perangkat (atau perangkat yang sama setelah menginstal ulang game Anda), Anda dapat mengkueri akun dalam game yang ditautkan dan menyederhanakan alur login.
Jika Anda telah terintegrasi dengan Android Recall API, Recall API ini akan terlihat familiar. Setiap integrasi sisi server dengan Fitur Panggilan Balik Layanan game Play dapat digunakan kembali oleh judul PC karena sama di Android & PC.
Prasyarat
Selesaikan penyiapan SDK.
Baca ringkasan Play Game Services Recall API.
Selesaikan penyiapan Layanan game Google Play di Konsol Play.
Langkah 1: Tambahkan ID project Layanan Game Play di manifes
Setelah menyelesaikan penyiapan Layanan game Play di Konsol Play, game Anda
kini memiliki ID project Layanan game Play yang terkait. Dengan menggunakan project ID ini,
yang dapat ditemukan di halaman Konfigurasi
Layanan game Play di Konsol Play, perbarui
manifest.xml game Anda.
Contoh konten manifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<Manifest version="1">
<Application>
<PackageName>com.example.package</PackageName>
<PlayGamesServices>
<ProjectId>123456789</ProjectId>
</PlayGamesServices>
</Application>
</Manifest>
Langkah 2: Minta akses Recall saat login
Saat game Anda menangani alur login, misalnya menambahkan akun dalam game, minta akses Ingatan menggunakan
GamesRecallClient::RequestRecallAccess().
Panggilan ini menampilkan ID sesi yang digunakan oleh backend Anda untuk melakukan panggilan sisi server ke Google untuk menautkan & membatalkan tautan akun dalam game Anda dengan pengguna Layanan game Play.
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
}
Langkah 3: Proses ID sesi Recall
Setelah game Anda memiliki ID sesi Recall dan telah meneruskannya ke server game backend, gunakan REST API sisi server Play Game untuk:
- Mengirim kueri untuk akun dalam game tertaut yang ada menggunakan
recall.retrieveTokens - Menambahkan atau memperbarui akun dalam game tertaut menggunakan
recall.linkPersona - Menghapus akun dalam game tertaut menggunakan
recall.unlinkPersona
Untuk panduan yang lebih mendetail yang mencakup integrasi sisi server, lihat dokumentasi yang membahas cara menggunakan Recall API di dalam server game Anda.