Buka konsol

Memulai Firebase Realtime Database for Unity

Firebase Realtime Database menyimpan dan menyinkronkan data dengan database cloud NoSQL. Data disinkronkan pada semua klien secara realtime dan tetap tersedia meski aplikasi Anda offline.

Sebelum memulai

Sebelum dapat menggunakan Realtime Database, Anda perlu:

  • Mendaftarkan project Unity Anda dan mengonfigurasikannya untuk menggunakan Firebase.

    • Jika project Unity Anda telah menggunakan Firebase, berarti project tersebut telah terdaftar dan dikonfigurasikan untuk Firebase.

    • Jika belum memiliki project Unity, Anda dapat mendownload aplikasi contoh.

  • Menambahkan Firebase Unity SDK (khususnya, FirebaseDatabase.unitypackage) ke project Unity Anda.

Perlu diperhatikan bahwa menambahkan Firebase ke project Unity Anda melibatkan tugas di Firebase console dan di project Unity yang terbuka (misalnya, Anda mendownload file konfigurasi Firebase dari konsol, lalu memindahkannya ke project Unity).

Menyiapkan akses publik

Realtime Database menyediakan bahasa aturan deklaratif, sehingga Anda dapat menentukan cara data disusun, diindeks, serta kapan data tersebut dapat dibaca dan ditulisi. Secara default, akses baca dan tulis ke database Anda dibatasi, sehingga hanya pengguna yang terautentikasi yang dapat membaca atau menulis data. Untuk memulai tanpa menyiapkan Authentication, Anda dapat mengonfigurasi aturan untuk akses publik. Tindakan ini membuat database Anda terbuka untuk siapa saja, bahkan untuk orang yang tidak menggunakan aplikasi Anda. Oleh karena itu, pastikan Anda membatasi database kembali saat menyiapkan autentikasi.

Mengonfigurasi SDK untuk Unity Editor.

Ketika menguji di Unity Editor, Anda dapat menggunakan Realtime Database. Anda harus mengonfigurasi SDK dengan URL database yang tepat. Panggil SetEditorDatabaseUrl dengan url database Anda.

using Firebase;
using Firebase.Unity.Editor;

public class MyScript: MonoBehaviour {
  void Start() {
    // Set this before calling into the realtime database.
    FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://YOUR-FIREBASE-APP.firebaseio.com/");
  }
}

Jika Anda memilih untuk menggunakan akses publik untuk aturan dan telah menetapkan url database, Anda dapat lanjut ke bagian tentang menyimpan dan mengambil data.

Opsional. Penyiapan Editor untuk akses terbatas.

Jika Anda memilih menggunakan aturan yang melarang akses publik, Anda perlu mengonfigurasi SDK untuk menggunakan akun layanan agar berjalan dalam Unity Editor. Tindakan ini juga membuat Anda bisa meniru pengguna akhir saat pengujian. Untuk melakukan ini, buat file p12 baru terlebih dahulu melalui

https://console.cloud.google.com/iam-admin/serviceaccounts/project?project=YOUR-FIREBASE-APP

Catat email dan sandi akun layanan yang dihasilkan.

Tempatkan file p12 di dalam "Editor Default Resources" dalam project Unity Anda. Berikutnya, tambahkan kode berikut untuk menginisialisasi penggunaan akun layanan.

using Firebase;
using Firebase.Unity.Editor;

public class MyScript: MonoBehaviour {
  void Start() {
    // Set these values before calling into the realtime database.
    FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://YOUR-FIREBASE-APP.firebaseio.com/");
    FirebaseApp.DefaultInstance.SetEditorP12FileName("YOUR-FIREBASE-APP-P12.p12");
    FirebaseApp.DefaultInstance.SetEditorServiceAccountEmail("SERVICE-ACCOUNT-ID@YOUR-FIREBASE-APP.iam.gserviceaccount.com");
    FirebaseApp.DefaultInstance.SetEditorP12Password("notasecret");
  }
}

Langkah Berikutnya

Masalah umum

  • Jika menggunakan framework eksperimental .NET 4.6, Realtime Database tidak akan berfungsi pada macOS dengan Unity 2017.2 karena ada regresi yang diperkenalkan pada 2017.2.0 yang memecah SslStream dalam konfigurasi tersebut. Regresi ini diperbaiki pada 2017.3.0 dan Realtime Database berfungsi dengan versi tersebut.