Mengintegrasikan Recall Layanan game Play ke dalam aplikasi

Login pengguna ke game dengan lancar sambil terus menggunakan sistem akun Anda sendiri. Dengan Play Games Services Recall API, Anda dapat menautkan akun dalam game dengan akun Layanan game Google Play, lalu saat pengguna memainkan game Anda di perangkat yang berbeda (atau perangkat yang sama setelah menginstal ulang game), Anda membuat kueri akun dalam game tertaut dan menyederhanakan alur login.

Jika Anda telah berintegrasi dengan Android Recall API, Recall API ini akan terlihat familier. Setiap integrasi sisi server dengan Recall Layanan game Play dapat digunakan kembali oleh judul PC karena sama di Android & PC.

Prasyarat

Langkah 1: Tambahkan project ID Layanan game Play Anda dalam 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 dalam 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 Recall menggunakan GamesRecallClient::RequestRecallAccess().

Panggilan ini menampilkan ID sesi yang digunakan oleh backend Anda untuk melakukan panggilan sisi server ke Google guna 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: Memproses 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:

Untuk panduan yang lebih mendetail yang membahas integrasi sisi server, lihat dokumentasi yang membahas cara menggunakan Recall API dalam server game Anda.