Autentikasi platform

Langkah pertama dalam mengintegrasikan game Anda dengan Layanan game Google Play (PGS) adalah menerapkan Autentikasi Platform. Hal ini diperlukan untuk mengakses semua fitur lainnya seperti pencapaian, papan peringkat, dan acara.

Karena SDK Layanan game Play otomatis melakukan autentikasi platform saat peluncuran game, Anda perlu mengintegrasikan SDK PGS v2 dengan game dan menerapkan alur autentikasi yang direkomendasikan, sehingga game Anda siap diterapkan dan memenuhi pedoman pengalaman pengguna Level Up Google Play Game.

Konsep autentikasi

Di Layanan game Play v2, konsep "login" dipisahkan menjadi dua lapisan berbeda: autentikasi platform dan autentikasi dalam game.

Autentikasi platform

Layanan game Play menyediakan lapisan interaksi platform. Layanan ini mengelola hubungan pemain Anda dengan ekosistem Google Play Game menggunakan Profil Gamer, untuk mengakses fitur seperti pencapaian, papan peringkat, dan misi. Autentikasi platform memiliki karakteristik utama berikut:

  • Otomatis dan tanpa interaksi pengguna: Autentikasi terjadi secara otomatis di latar belakang saat game diluncurkan. Layanan game Play tidak memerlukan tombol Login manual.
  • ID Pemain: Setelah autentikasi platform berhasil, Layanan game Play memberikan ID Pemain yang stabil. ID ini konsisten di seluruh perangkat untuk game yang sama. Gunakan ID ini terutama untuk melacak fitur platform, seperti progres pencapaian.
  • Tidak Terhubung: Anda tidak boleh menggunakan Layanan Game Play sebagai sistem identitas utama game untuk mengelola akun dalam game (IGA), progres game, atau inventaris pemain. Layanan game Play berfungsi sebagai ID platform yang persisten.

ID Pemain

ID pemain adalah ID untuk akun pemain Layanan game Play. Game Anda dapat mengambil ID pemain untuk setiap pemain yang login ke game Anda menggunakan autentikasi Layanan game Play. Integrasi klien game, integrasi server game, dan layanan simpan di cloud dapat menggunakan ID ini untuk mengakses data pemain dengan aman dari Layanan game Play.

ID pemain konsisten bagi pengguna saat mereka memainkan game Anda di beberapa perangkat. Namun, hal tersebut tidak selalu konsisten di antara game. Untuk informasi selengkapnya, lihat ID Pemain generasi berikutnya.

Autentikasi dalam game

Anda mengelola akun dalam game (IGA), yaitu sistem identitas yang mengikat progres, inventaris, dan mata uang pemain dalam game Anda.

  • Identitas Utama: Anda dapat menggunakan backend Anda sendiri, Login dengan Google (SiWG), atau penyedia lain sebagai metode login utama.
  • Independensi: Pemain dapat login ke Layanan game Play (Identitas Platform) untuk mendapatkan pencapaian saat login ke IGA tertentu (misalnya, akun tamu atau akun SiWG tertentu).
  • Pengelolaan beberapa IGA: Layanan game Play hanya menangani autentikasi platform. Game Anda mengelola autentikasi utama pemain ke IGA mereka. Artinya, tidak ada perubahan pada alur yang ada di game Anda bagi pemain untuk beralih antar-IGA mereka. Saat pemain beralih akun, mereka tetap diautentikasi ke platform Play Game melalui PGS, dan Anda terus mengirim data mereka yang terkait dengan pencapaian dan fitur PGS lainnya terhadap ID Pemain yang persisten.

Kontinuitas lintas platform dengan SiWG

Untuk membantu pemain membawa progres mereka di Android, iOS, dan web, gunakan Login dengan Google sebagai metode autentikasi dalam game utama. Pertimbangkan hal berikut:

  • Tombol Login dengan Google: Di PGS v1, tombol Google Play sering kali menangani login platform dan game. Di v2, ini adalah proses terpisah. Terapkan tombol Login dengan Google standar agar pemain dapat mengautentikasi dan mengakses IGA mereka.
  • SDK Login dengan Google:
    • Untuk Android dan iOS, gunakan SDK Login dengan Google standar untuk mengautentikasi pemain ke IGA mereka.
    • Gunakan Google Open ID sebagai ID utama untuk akun dalam game pemain.
    • Gunakan ID Pemain Layanan game Play untuk melaporkan progres pemain pada fitur Play Game, seperti pencapaian.

Integrasi yang direkomendasikan

Untuk mengintegrasikan game Anda dengan Layanan game Play, ikuti langkah-langkah yang direkomendasikan berikut:

Inisialisasi dan autentikasi

Langkah ini diperlukan untuk menginisialisasi dan mengautentikasi game Anda:

Terapkan autentikasi platform dengan melakukan inisialisasi SDK Layanan game Play v2 saat startup. Untuk mengetahui informasi selengkapnya, lihat autentikasi platform untuk game Android. Langkah ini diperlukan untuk mengakses fitur Layanan game Play, seperti pencapaian dan papan peringkat.

Autentikasi berjalan sebagai proses latar belakang yang tidak terlihat saat game diluncurkan. Pengguna Layanan game Play yang sudah ada akan melihat pesan selamat datang setelah autentikasi berhasil. Pengguna yang tidak memiliki profil Layanan game Play akan diminta untuk membuat profil selama inisialisasi SDK.

Permintaan login otomatis

Pembuatan profil

Pemain memerlukan profil Layanan game Play untuk berinteraksi dengan platform. Beberapa pemain mungkin tidak memiliki profil Layanan game Play saat mulai memainkan game Anda. Mereka kemudian akan diminta untuk membuat profil.

Petunjuk pembuatan profil yang dimulai otomatis muncul secara default saat Anda meluncurkan game tanpa profil Layanan game Play.

Petunjuk pembuatan profil saat Anda meluncurkan game.
Petunjuk pembuatan profil saat Anda meluncurkan game (klik untuk memperbesar).

Autentikasi dalam game

Setelah autentikasi platform berhasil dilakukan, developer harus menerapkan langkah-langkah berikut agar pemain dapat mengakses IGA mereka, bergantung pada status game saat ini:

  1. Jika ada sesi game aktif di perangkat, izinkan pemain melanjutkan sesi saat ini.
  2. Jika tidak ada sesi game aktif:
    1. Dalam skenario pemulihan lancar di mana IGA yang terakhir dimainkan dikaitkan dengan ID Pemain PGS, lanjutkan untuk memulihkan IGA terkait secara otomatis.
    2. Jika tidak, tampilkan layar login atau pembuatan akun yang ditentukan aplikasi Anda kepada pemain. Pemain kemudian dapat memilih metode autentikasi yang disukai untuk membuat atau login ke IGA yang ada.

Cakupan OAuth

Layanan game Play mengandalkan sistem OAuth untuk memungkinkan pemain memberi game Anda akses ke akun mereka. Layanan game Play memiliki cakupan unik untuk game (games-lite) dan bergantung pada cakupan lain (drive.appdata) jika game Anda menggunakan fitur game tersimpan. Fitur game tersimpan memberikan akses ke akun Google Drive pengguna, tempat penyimpanan data game.

Saat menggunakan SDK Layanan game Play v2, Anda dapat meminta cakupan OAuth tambahan. Jika Anda memerlukan cakupan OAuth tambahan, sebaiknya panggil requestServerSideAccess. Untuk mengetahui informasi selengkapnya, lihat mendapatkan kode autentikasi server atau mengambil kode autentikasi server.

Panduan pengalaman pengguna untuk alur autentikasi yang ideal

Panduan berikut menjelaskan alur autentikasi yang direkomendasikan dengan integrasi PGS v2. Mereka mencakup skenario untuk pengguna baru, lama, dan yang kembali, serta mode tamu.

Pemain baru

Alur ini berlaku untuk pengguna yang meluncurkan game untuk pertama kalinya di perangkat tanpa histori permainan sebelumnya dengan game tersebut.

  1. Saat diluncurkan, PGS SDK akan diinisialisasi untuk mengautentikasi identitas platform pengguna (ID Pemain PGS).
  2. Setelah handshake di latar belakang ini, game akan menampilkan opsi pembuatan IGA kepada pemain, misalnya, Buat akun baru, Login dengan Google, atau metode login media sosial lainnya.
  3. Setelah pemain membuat atau memilih IGA, game mengikat akun ini ke ID utama yang dipilih di backend-nya.
  4. Game juga mengikat IGA yang dipilih ini ke ID Pemain PGS, menandainya sebagai IGA terakhir yang dimainkan untuk pemulihan lancar.
Pemain Baru dengan Profil PGS yang login
Pemain Baru yang login dengan Profil PGS (klik untuk memperbesar).
Pemain Baru tanpa profil PGS
Pemain Baru tanpa profil PGS (klik untuk memperbesar).
Pemain Baru dengan profil PGS yang login
Pemain Baru dengan profil PGS yang login (klik untuk memperbesar).

Pemain dengan sesi aktif

Skenario ini menjelaskan pemain meluncurkan game di perangkat tempat mereka sudah memiliki sesi aktif. Tujuannya adalah memberikan pengalaman masuk yang lancar.

  1. Saat pemain meluncurkan aplikasi, PGS akan melakukan autentikasi secara diam-diam di latar belakang, sehingga memberi Anda ID Pemain untuk melacak progres berdasarkan prestasi dan fitur game Play lainnya.
  2. Secara bersamaan, jika berlaku, game melewati layar login dan langsung membuat pemain login ke sesi IGA aktifnya atau IGA terakhir yang terkait dengan ID Pemainnya, sehingga mereka dapat melanjutkan gameplay dengan segera.
Luncurkan game di perangkat yang sama dengan profil PGS yang login
Luncurkan game di perangkat yang sama dengan profil PGS yang login (klik untuk memperbesar).
Meluncurkan game di perangkat yang sama dengan profil PGS yang logout
Luncurkan game di perangkat yang sama dengan profil PGS yang logout (klik untuk memperbesar).
Meluncurkan game di perangkat yang sama tanpa profil PGS
Luncurkan game di perangkat yang sama tanpa profil PGS (klik untuk memperbesar).
Meluncurkan game di perangkat baru dengan profil PGS yang login dan IGA yang ditautkan
Luncurkan game di perangkat baru dengan profil PGS yang login dan IGA yang ditautkan (klik untuk memperbesar).
Meluncurkan game di perangkat baru dengan profil PGS yang login dan tidak ada IGA tertaut
Luncurkan game di perangkat baru dengan profil PGS yang login dan tanpa IGA tertaut (klik untuk memperbesar).
Meluncurkan game di perangkat baru dengan profil PGS yang logout
Luncurkan game di perangkat baru dengan profil PGS yang logout (klik untuk memperbesar).
Meluncurkan game di perangkat baru tanpa profil PGS
Luncurkan game di perangkat baru tanpa profil PGS (klik untuk memperbesar).

Pemain yang mengganti akun

Alur ini terjadi saat pemain dengan sesi aktif membuka setelan game untuk beralih akun. Misalnya, logout dari akun utama untuk menggunakan akun alternatif.

  1. Pemain logout dari IGA saat ini, tetapi koneksi platform PGS tetap aktif.
  2. Saat pemain login dengan IGA yang berbeda, game akan mengikat akun baru ini ke ID Pemain PGS saat ini sebagai IGA yang terakhir dimainkan hanya untuk pemulihan yang lancar.
Beralih ke IGA yang tidak terikat dengan profil PGS apa pun
Beralih ke IGA yang tidak terikat dengan profil PGS mana pun (klik untuk memperbesar).
Beralih ke IGA yang terikat dengan profil PGS yang sama dengan yang digunakan untuk login
Beralih ke IGA yang terikat dengan profil PGS yang sama dan login (klik untuk memperbesar).
Beralih ke IGA yang terikat dengan profil PGS yang berbeda
Beralih ke IGA yang terikat dengan profil PGS yang berbeda (klik untuk memperbesar).
Beralih IGA tanpa profil PGS di perangkat
Beralih ke IGA tanpa profil PGS di perangkat (klik untuk memperbesar).
Beralih IGA dengan profil PGS yang logout
Beralih IGA dengan profil PGS yang logout (klik untuk memperbesar).
Beralih ke IGA yang tidak ada
Beralih ke IGA yang tidak ada (klik untuk memperbesar).

Pemulihan yang lancar untuk pemain yang kembali

Skenario ini berlaku saat pemain meluncurkan game setelah periode tidak aktif, penginstalan ulang, atau di perangkat yang benar-benar baru. Game direkomendasikan untuk menerapkan pemulihan lancar.

  1. Saat diluncurkan, PGS akan mengautentikasi pengguna dan memberikan ID Pemain PGS ke game.
  2. Game memeriksa backend-nya (atau token recall yang diambil jika menggunakan Recall API) untuk melihat apakah IGA yang terakhir dimainkan sudah ditautkan ke ID PGS ini.
  3. Jika link ditemukan, game akan otomatis memulihkan progres pemain dan login, sehingga melewati layar login manual sepenuhnya.
  4. Jika tidak, game akan menampilkan layar login pemain
    1. Pemain kemudian memilih metode login dan login ke IGA
    2. Kemudian, game mengikat IGA ini dengan ID pemain PGS sebagai IGA terakhir yang dimainkan untuk pemulihan yang lancar.
Pemain yang kembali dengan profil PGS yang logout
Pemain yang Kembali dengan profil PGS yang logout (klik untuk memperbesar).
Pemain Lama dengan profil PGS yang login dan IGA yang ditautkan
Pemain yang Kembali dengan profil PGS yang login dan IGA yang ditautkan (klik untuk memperbesar).
Pemain Lama dengan profil PGS yang login dan tidak ada IGA yang ditautkan
Pemain yang Kembali dengan profil PGS yang login dan tidak ada IGA yang ditautkan (klik untuk memperbesar).
Pemain yang Kembali tanpa profil PGS
Pemain yang Kembali tanpa profil PGS (klik untuk memperbesar).

Mode tamu

Pemain dapat meluncurkan game dan bermain menggunakan akun tamu lokal. PGS masih melakukan autentikasi di latar belakang. Jika pemain memilih untuk Simpan Progres, game akan mengonversi sesi tamu menjadi IGA permanen dan mengikatnya ke ID Pemain PGS.

Mode Tamu - IGA tidak dibuat
Mode Tamu - Tidak ada IGA yang dibuat (klik untuk memperbesar).
Mode Tamu - IGA dibuat
Mode Tamu - IGA dibuat (klik untuk memperbesar).