✅ Tujuan
Dalam tutorial ini, kamu akan mempelajari cara membuat game Android yang dibangun dengan Unity agar bisa menerima push notification realtime, yang bisa kamu kirim dari website milikmu sendiri — cocok saat kamu ingin memberitahu pemain bahwa kamu merilis game baru, mengadakan event, update fitur, dll.
🔧 Alat & Layanan yang Digunakan
| Alat | Fungsi |
|---|---|
| Firebase Cloud Messaging (FCM) | Layanan pengiriman push notification dari Google (gratis). |
| Unity | Engine untuk membuat game Android-mu. |
| Firebase SDK for Unity | Library agar Unity bisa terhubung ke Firebase. |
| Website Panel (PHP) | Panel sederhana untuk mengirim notifikasi. |
✨ Ringkasan Arsitektur
- Game Unity:
- Terhubung ke Firebase Cloud Messaging.
- Mendapatkan token perangkat atau bergabung ke topic notifikasi.
- Menampilkan push notification.
- Website Panel:
- Form sederhana untuk menulis dan mengirim notifikasi.
- Mengirim permintaan ke server FCM agar push terkirim ke semua perangkat.
🛠️ Langkah-Langkah Lengkap
1. Buat Project Firebase
- Kunjungi: https://console.firebase.google.com/
- Klik “Add Project” → beri nama project-mu.
- Aktifkan fitur Firebase Cloud Messaging.
- Setelah project jadi, tambahkan aplikasi Android:
- Masukkan package name game kamu (harus sama dengan di Unity).
- Unduh file
google-services.json.
2. Setup Firebase di Unity
- Tambahkan file
google-services.jsonke folder: CopyEditAssets/ - Download dan import Firebase Unity SDK:
- Unduh dari: https://firebase.google.com/download/unity
- Import
FirebaseMessaging.unitypackagedanFirebaseApp.unitypackage.
- Inisialisasi Firebase di script Unity kamu:
using UnityEngine;
using Firebase;
using Firebase.Messaging;
public class FirebaseInit : MonoBehaviour
{
void Start()
{
FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
FirebaseMessaging.TokenReceived += OnTokenReceived;
FirebaseMessaging.MessageReceived += OnMessageReceived;
FirebaseMessaging.Subscribe("all"); // join ke topik
});
}
void OnTokenReceived(object sender, TokenReceivedEventArgs token)
{
Debug.Log("FCM Token: " + token.Token);
// (opsional) kirim token ke websitemu
}
void OnMessageReceived(object sender, MessageReceivedEventArgs e)
{
Debug.Log("Push dari: " + e.Message.From);
Debug.Log("Isi: " + e.Message.Notification.Body);
}
}
- Build untuk Android, dan pastikan game kamu bisa berjalan.
3. Buat Panel Web untuk Kirim Notifikasi
📄 index.html (Panel Form):
<form action="send_notification.php" method="POST">
<input type="text" name="title" placeholder="Judul Notifikasi" required><br>
<textarea name="body" placeholder="Isi Notifikasi" required></textarea><br>
<button type="submit">Kirim Notifikasi</button>
</form>
📄 send_notification.php:
<?php
$serverKey = "ISI_DENGAN_SERVER_KEY_FIREBASE_MU"; // ambil dari Firebase > Project Settings > Cloud Messaging
$title = $_POST['title'];
$body = $_POST['body'];
$data = [
"to" => "/topics/all",
"notification" => [
"title" => $title,
"body" => $body
]
];
$options = [
"http" => [
"header" => "Content-type: application/json\r\n" .
"Authorization: key=$serverKey\r\n",
"method" => "POST",
"content" => json_encode($data),
]
];
$context = stream_context_create($options);
$result = file_get_contents("https://fcm.googleapis.com/fcm/send", false, $context);
echo $result;
?>
4. Ambil Server Key dari Firebase
- Buka Firebase Console → Project Settings.
- Tab: Cloud Messaging.
- Copy Server Key dan tempelkan ke file
send_notification.php.
📱 Cara Kerja Setelah Semua Terpasang
- Game Unity akan otomatis berlangganan ke topik
/topics/all. - Kamu buka panel website dan isi form notifikasi.
- PHP script mengirim permintaan ke server FCM.
- Semua device yang menginstal game kamu akan langsung menerima notifikasi.
❗ Tips dan Catatan
- Tidak perlu simpan token secara manual jika kamu hanya broadcast ke semua (
topics/all). - Bisa juga nanti kamu buat segmentasi, misalnya berdasarkan negara, versi app, atau preferensi pemain.
- Pastikan package name di Unity dan di Firebase benar-benar sama.
💰 Apakah Firebase Gratis?
Ya! Firebase Cloud Messaging benar-benar gratis, tanpa batasan jumlah pengguna, dan sangat cocok untuk pengembang indie.
| Fitur | Biaya |
|---|---|
| FCM (Cloud Messaging) | GRATIS |
| Realtime DB (opsional) | Gratis hingga 1 GB |
| Firebase Auth | Gratis hingga 10.000 pengguna aktif/bulan |
🔚 Penutup
Dengan mengikuti langkah-langkah ini, kamu sudah bisa membangun sistem push notification profesional yang:
- Gratis 100%
- Cepat dan realtime
- Bisa kamu kendalikan dari website pribadi
- Langsung menyentuh pengguna aktif game kamu
Kalau kamu seorang developer game indie, ini cara powerful untuk tetap engage dengan user, mengumumkan update, atau promosi game baru. Selamat mencoba dan semoga sukses dengan proyek gamemu!