PERHATIAN: Layanan game Google Maps Platform tidak digunakan lagi mulai 18 Oktober 2021. Pengguna saat ini akan terus memiliki akses hingga 31 Desember 2022. Selama jangka waktu tersebut, kami akan terus memberikan dukungan dan perbaikan pada bug dan gangguan layanan yang kritis. Lihat Panduan Transisi Layanan Game untuk mengetahui referensi yang dapat membantu Anda merencanakan langkah berikutnya untuk project Anda.

Praktik Terbaik Produksi

Google merekomendasikan agar Anda mengikuti praktik terbaik ini saat mengelola dan menjalankan aplikasi Anda.

Mengamankan kunci API

Anda memerlukan kunci API untuk menggunakan layanan online kami, dan penggunaannya memungkinkan Google untuk mengukur penggunaan Anda. Sebaiknya batasi kunci API Anda untuk mencegah penggunaan yang tidak sah.

Tipe pembatasan kunci API

Ada dua jenis pembatasan kunci API, dan Anda dapat menggunakan keduanya secara bersamaan.

Jenis pembatasanMembatasi penggunaan kunci hanya untuk
Pembatasan API API tertentu.
Pembatasan aplikasi Alamat IP, situs, atau aplikasi tertentu.

Rekomendasi pembatasan kunci API

Sebaiknya Anda membuat kunci API terpisah untuk skenario berikut.

SkenarioRecommendation
Server game back-end memanggil Playable Locations API untuk mengambil lokasi yang dapat dimainkan. Konfigurasikan kunci dengan dua batasan:
  • Pembatasan API: Mengizinkan panggilan hanya ke Playable Locations API.
  • Pembatasan aplikasi: Mengizinkan panggilan yang hanya berasal dari alamat IP server game back-end Anda.
Versi Android aplikasi Anda memanggil Maps SDK for Unity untuk mengambil data geografis. Konfigurasikan kunci dengan pembatasan aplikasi untuk memungkinkan panggilan hanya dari versi Android aplikasi Anda.
Versi iOS aplikasi Anda memanggil Maps SDK for Unity API untuk mengambil data geografis. Konfigurasikan kunci dengan pembatasan aplikasi untuk mengizinkan panggilan hanya dari versi iOS aplikasi Anda.

Untuk informasi selengkapnya, lihat Praktik terbaik keamanan API.

Untuk menyiapkan pembatasan kunci API

  1. Buka panel kredensial di Google Cloud Console.
  2. Pilih kunci API yang ingin Anda batasi. Halaman properti kunci API akan muncul.
  3. Di bagian Key restrictions, pilih tab Application restrictions, lalu pilih salah satu dari empat jenis pembatasan aplikasi.
    Jenis pembatasan Deskripsi
    Perujuk HTTP Menerima permintaan dari daftar situs yang Anda berikan.
    Alamat IP Menerima permintaan dari daftar alamat IP server web yang Anda berikan.
    Aplikasi Android Tambahkan nama paket dan sidik jari sertifikat penandatanganan SHA-1 untuk membatasi penggunaan pada aplikasi Android Anda.
    Aplikasi iOS Menerima permintaan dari aplikasi iOS dengan ID paket yang Anda berikan.
  4. Di bagian Pembatasan kunci, pilih tab Pembatasan API, lalu pilih API yang ingin Anda batasi kunci APInya.
  5. Klik Simpan.

Mendukung update kunci API

Pastikan Anda memiliki infrastruktur untuk memperbarui kunci API di seluruh stack penayangan. Dengan demikian, game Anda dapat pulih jika kunci API Anda disusupi, dan Anda perlu memperpanjangnya dalam waktu singkat.

Gunakan kunci terpisah untuk setiap aplikasi, sehingga Anda dapat dengan mudah menukar kunci dalam satu aplikasi tanpa memengaruhi aplikasi lain.

Rekomendasi keamanan server game

Saat server Playable Locations API mengalami gangguan karena alasan apa pun, masalah akan terjadi saat perangkat kembali online—saat beberapa server game mencoba menghubungkan kembali ke server secara bersamaan. Lonjakan QPS tersebut dapat mengirim server ke mode DoS, yang memperburuk situasi dengan memblokir traffic masuk.

Untuk mengurangi situasi ini, Google meminta Anda menerapkan Back-off Eksponensial Biner di server game Anda. Ini adalah pendekatan sistematis untuk memberi jarak pada percobaan ulang koneksi Anda. Secara khusus, Anda akan menerapkan algoritme yang menunggu N detik setelah upaya koneksi ulang gagal sebelum mencoba lagi. Jika upaya berikutnya gagal, algoritme Anda akan menggandakan masa tunggu, lalu mencoba lagi. Jika upaya berikutnya gagal, algoritme Anda akan menggandakan masa tunggu lagi, lalu mencoba lagi. Anda akan menggandakan waktu tunggu setelah setiap percobaan, hingga upaya terakhir Anda berhasil.

Menangani kode status pengembalian HTTP

Anda harus menerapkan back-off eksponensial biner untuk beberapa kode pengembalian HTTP, tetapi tidak semuanya.

400 dtk
Ini adalah error klien yang umumnya tidak bisa dipulihkan, sehingga mencoba kembali permintaan yang gagal yang menghasilkan kode error ini tidak akan berfungsi. Anda harus mendeteksi jenis error ini selama pengujian.
429
Ini adalah error resource yang habis saat Anda mulai kehabisan kuota API. Untuk melihat batas QPS API project Anda, buka Kuota Google API.
500 dtk
Ini adalah error sisi server—jenis error yang paling sering menyebabkan backoff eksponensial.