Identitas dan penautan akun

Gunakan autentikasi Layanan game Google Play untuk menyederhanakan pengalaman autentikasi platform pengguna untuk game Anda. Inisialisasi SDK Layanan game Play untuk memicu autentikasi, yang menghilangkan kebutuhan akan alur autentikasi platform terpisah.

Menautkan akun pengguna untuk mengaktifkan kontinuitas dan Play lintas-perangkat

Pemain berinteraksi dengan game favorit mereka di berbagai perangkat dan platform, termasuk perangkat seluler, tablet, dan PC. Salah satu ekspektasi utama bagi pemain ini adalah kemampuan untuk melanjutkan gameplay dengan lancar tepat di bagian yang terakhir dimainkan, terlepas dari perangkat yang mereka pilih.

Hambatan signifikan yang sering menyebabkan pengguna berhenti menggunakan aplikasi adalah persyaratan untuk login secara terpisah di setiap perangkat baru. Pengguna memerlukan pengalaman bermain game yang langsung imersif dan bebas dari gangguan yang tidak perlu.

Untuk memfasilitasi kontinuitas yang lancar dan permainan lintas-perangkat, Anda harus menerapkan dua fitur utama:

Proses autentikasi Layanan game Play memberikan opsi yang fleksibel untuk ID pemain. Opsi ini memungkinkan Anda mengintegrasikan Layanan game Play dengan solusi identitas Anda yang sudah ada.

Integrasi Layanan game Play baru

Untuk game tanpa integrasi Layanan game Play yang sudah ada, Recall API menyederhanakan penyiapan backend dengan mengelola asosiasi akun dan menyimpan koneksi antara akun game pengguna dan akun Layanan game Play miliknya.

Penautan akun menggunakan Recall API

Recall API adalah solusi yang direkomendasikan untuk menautkan akun pengguna di game lintas platform. API ini sangat berguna untuk game tanpa integrasi Layanan game Play yang ada atau yang menggunakan solusi autentikasi platform tambahan di luar Layanan game Play.

Recall API menyederhanakan penyiapan backend game Anda dengan mengelola asosiasi akun.

  • Backend yang disederhanakan: API ini menyederhanakan penyiapan backend game Anda untuk penautan akun.
  • Asosiasi yang Dikelola Play: Play menyimpan asosiasi antara akun game pengguna (termasuk akun pihak ketiga) dan akun Layanan game Play mereka.
  • Pemulihan progres: Developer membuat dan mengirim token Recall ke Play, yang kemudian dapat diambil untuk memulihkan progres game pengguna.

Saat menerapkan Recall API, developer harus memverifikasi bahwa token Recall adalah string buram. Token ini tidak boleh berisi informasi sensitif atau identitas pribadi tentang gamer (seperti nama, alamat email, atau demografi).

Game harus menggunakan algoritma enkripsi yang andal saat membuat token Recall untuk melindungi data pengguna dan menjaga keamanan.

Untuk mempelajari lebih lanjut cara kerja Recall, lihat Recall API .

Untuk menerapkan fitur Recall API, lihat Mengintegrasikan Play Games Services Recall API dalam game Anda.

Mengelola beberapa akun dengan Recall API

Saat mengelola beberapa akun untuk pengguna yang sama, Anda dapat memperlakukan setiap akun sebagai persona yang berbeda. Pendekatan ini memungkinkan pengalaman yang disesuaikan berdasarkan konteks spesifik pengguna.

Untuk menerapkan pendekatan ini, ikuti langkah-langkah berikut:

Meskipun berbagai opsi kebijakan tersedia (seperti memulihkan akun terakhir secara otomatis), sebaiknya tampilkan dialog kepada pengguna. Perintah ini harus meminta mereka memilih akun mana yang ingin dipulihkan, sehingga memberikan pengalaman yang jelas dan mudah digunakan.

Integrasi Layanan game Play yang ada

Bagian ini menjelaskan cara mengintegrasikan game Anda dengan Layanan game Play dengan mengikat akun pemain. Pelajari cara menggunakan ID pemain untuk mengidentifikasi pemain yang diautentikasi dan mengelola beberapa akun game untuk satu pengguna Layanan game Play.

Ikatkan dengan Player_id

ID pemain adalah ID untuk akun pemain Layanan game Play. Game Anda dapat mengambil ID pemain untuk setiap pemain yang diautentikasi ke game Anda menggunakan Layanan game Play.

Game yang telah menyiapkan backend dengan Layanan game Play Player_Id atau game yang memerlukan dukungan untuk pengguna anak, harus menggunakan Player_Id dan menautkan akun game dan akun pihak ketiga mereka dengan Player_Id.

Pahami perilaku ID pemain:

  • Konsisten dalam game: ID pemain tetap konsisten bagi pengguna di beberapa perangkat saat mereka memainkan game yang sama.
  • Tidak konsisten di antara game: ID Pemain tidak selalu konsisten saat pengguna memainkan game yang berbeda.

Untuk mengetahui informasi selengkapnya, lihat ID Pemain generasi berikutnya.

Mengelola beberapa akun per pengguna dengan pengikatan

Untuk menautkan beberapa akun pengguna ke satu akun Layanan game Play, buat pemetaan satu-ke-banyak di tabel Anda.

Identitas Google lintas platform menggunakan Login dengan Google

Login dengan Google (SiwG) adalah solusi identitas utama Google yang memungkinkan developer game menerima informasi profil pemain mereka secara aman: nama, alamat email, dan foto profil mereka.

Manfaat utama Login dengan Google adalah ketersediaannya yang luas di berbagai platform, termasuk web, Android, dan iOS. Layanan ini memberikan pengalaman login yang cepat, aman, dan sudah dikenal serta dipercayai oleh pemain.

Kolom sub token ID Bind with Google

Untuk menciptakan pengalaman lintas platform yang lancar, Anda dapat menerapkan strategi autentikasi yang menautkan sistem akun game Anda ke ID Akun Google yang unik. Pendekatan ini memanfaatkan autentikasi Layanan game Play yang disederhanakan di Android sekaligus menggunakan SDK Login dengan Google standar di platform lain seperti iOS dan Web.

Kunci dari strategi ini adalah kolom sub dari token ID Google. Kolom sub (atau "subjek") adalah ID unik dan persisten untuk akun pengguna Google. Anda akan menggunakan ID ini sebagai "jembatan" untuk menautkan semua sesi pemain ke satu akun game di backend Anda.

Berikut alur umumnya:

  • Di Android: Game Anda menginisialisasi SDK Layanan game Play untuk memicu autentikasi secara otomatis di perangkat Android. Anda mengonfigurasi integrasi Layanan game Play v2 untuk meminta tiga cakupan login: email, profile, dan openid. Cakupan ini sama dengan cakupan yang diminta oleh SDK Login dengan Google standar. Dengan begitu, Anda dapat mengambil token ID yang berisi kolom sub pemain.
  • Di Web dan iOS: Game Anda menggunakan SDK Login dengan Google untuk web, Login dengan Google untuk iOS dan macOS standar. Saat pengguna login, SDK SiwG menyediakan token ID yang juga berisi kolom sub pengguna.
  • Penautan Akun: Karena pengguna login dengan Akun Google yang sama di kedua platform, kolom sub yang Anda terima akan identik. Kemudian, Anda dapat dengan yakin mengikat nilai sub ini ke ID pengguna internal di solusi identitas Anda, sehingga menciptakan pengalaman pengguna yang terpadu.

Integrasi di Android

Di Android, Anda akan menggunakan Google Play Game Services SDK sebagai titik integrasi utama. Kuncinya adalah mengonfigurasi klien login Layanan game Google Play Anda untuk meminta cakupan login tambahan. Dengan begitu, Anda dapat mengambil kode otorisasi sisi server, yang dapat ditukar oleh backend Anda dengan token ID yang berisi informasi pengguna, termasuk kolom sub unik.

Secara umum, penerapan ini melibatkan:

  1. Menyiapkan ID Klien dalam Project Terpadu: Sebelum melakukan integrasi, Anda harus menyiapkan Layanan game Play di Konsol Google Play untuk mendapatkan ID Klien OAuth 2.0.

  2. Konfigurasi Layanan game Play: Sebelum memulai, Anda harus menambahkan game di Konsol Google Play dan mengintegrasikan autentikasi platform Layanan game Play dengan game Anda.

  3. Menambahkan Tombol Login dengan Google: Di halaman login atau layar setelan pengguna game Anda, tambahkan tombol "Login dengan Google". Tombol ini akan memicu alur login atau pendaftaran. Saat membuat tombol ini, sebaiknya Anda mengikuti pedoman branding Login dengan Google. Setidaknya, tombol harus menampilkan "Google" atau "Login dengan Google" dengan jelas. Link pedoman juga menyediakan aset UX yang dapat didownload, yang sesuai dan dapat digunakan dalam game Anda.

  4. Meminta Kode Autentikasi Server dengan Cakupan Login: Saat pemain mengklik tombol, game Anda akan meminta kode autentikasi server satu kali. Langkah yang paling penting adalah mengonfigurasi permintaan ini agar menyertakan cakupan login berikut: EMAIL, PROFILE, dan OPEN_ID.

    Cara Anda mengonfigurasi ini bergantung pada lingkungan pengembangan Anda:

  5. Menukar Kode Autentikasi dan Memverifikasi Token ID di Backend: Kirim kode autentikasi dari langkah sebelumnya ke server backend Anda. Di server, ikuti panduan alur pertukaran kode OAuth 2.0 standar untuk menukar kode dengan token ID, token akses, dan token refresh. Seperti yang dijelaskan dalam panduan, Anda harus memverifikasi token ID di server Anda.

  6. Ikat Kolom sub: Setelah token ID berhasil diverifikasi, ekstrak kolom sub dari payload-nya. Gunakan nilai sub ini sebagai kunci unik untuk identitas Google dalam solusi identitas Anda.

    • Jika nilai sub ini sudah ada di database Anda, pengguna telah menautkan sebelumnya. Login ke akun game yang sesuai.

    • Jika nilai sub ini tidak ada, Anda dapat membuat akun pengguna baru di sistem akun game yang dikaitkan dengan sub ini, atau menautkan ke akun pengguna yang ada di sistem akun Anda dengan mencocokkan informasi pengguna (seperti alamat email) yang diberikan di Token ID.

Integrasi di iOS, Web, dan platform lainnya

Di platform selain Android, iOS, Web, atau PC, Anda akan menggunakan SDK Login dengan Google standar. Tujuannya sama dengan alur Android: untuk mendapatkan token ID Google secara aman, mengirimkannya ke backend Anda, dan menggunakan kolom sub untuk menautkan akun.

Secara umum, penerapan ini melibatkan:

  1. Integrasi Sisi Klien: Ikuti dokumentasi resmi untuk mengintegrasikan SDK Login dengan Google untuk platform Anda. Panduan ini mencakup alur sisi klien lengkap, mulai dari merender tombol Login dengan Google hingga mengambil token ID.

  2. Logika Backend: Kirim token ID (atau kode otorisasi) ke backend Anda. Server Anda kemudian melakukan verifikasi dan pengikatan kolom sub yang sama persis seperti yang dijelaskan dalam langkah 4 dan 5 bagian "Integrasi di Android".

Karena kolom sub dari semua alur Login dengan Google ini identik dengan yang diambil dari alur Layanan game Google Play di Android (untuk Akun Google yang sama), proses ini berhasil menautkan akun pengguna di semua platform.