DeretCode|

Tips, Trik dan Tutorial
Seputar IT, Coding, Internet Marketing, Keahlian, Pendidikan, Hobi Dan Lainnya
Night :

Tutorial Membuat Push Notification Android Menggunakan Firebase

advertisement
   
Tutorial push notification di android menggunakan firebase

    Firebase adalah sebuah layanan dari google yang bisa kita gunakan untuk mengembangkan aplikasi realtime. Ada banyak sekali fitur-fitur yang disediakan untuk mempermudah proses pengembangan aplikasi salah satunya yang akan kita bahas pada artikel kali ini yaitu Push Notification. Untuk melakukan push notification kita akan menggunakan Fcm (Firebase Clous Messaging).

Kenapa Menggunakan Firebase

Sebenarnya ada banyak sekali layanan yang bisa kita gunakan untuk membuat realtime aplikasi android seperti rabbitmq. Tapi karena firebase adalah produk dari google sendiri dan tentu saja akan lebih mudah mengimplementasikannya di aplikasi android. Selain itu, menggunakan firebase tidak akan membuat aplikasi yang kita buat menjadi boros batrai dibanding kita membuat websocket sendiri secara manual, karena tidak membuat koneksi tcp baru di device android kita.

Membuat Project Firebase

Untuk mengintegerasikan firebase dengan aplikasi android maka kita perlu SHA Key dan file json bernama google-service.json yang di dapat dari firebase project. Silahkan kalian ikut langkah-langkahnya.
  1. Buka firebase.google.com dan jika kalian belum punya akunnya silahkan daftar terlebih dahulu (gratis) dan jika sudah punya kalian bisa langsung login dasboard consolenya.
  2. Silahkan kalian buat project baru dengan nama bebas. Dan untuk sementara tidak perlu mengaktifkan google analyticnya
  3. Kemudian kalian klik logo icon android untuk menambahkan service firebase ke aplikasi android.
  4. Silahkan kalian isi nama paket android sesuai dengan package android project kita dan berikan aplikasinya. untuk kode SHA kita lewatkan dulu. Setalah itu silahkan klik daftarkan aplikasi
  5. Silahkan download file goog-service.json yang sudah di generate tadi dan tempatkan di dalam folder app project android kalian, seperti gambar berikut

Mengintegrasikan Firebase Dengan Aplikasi

Untuk mengintegrasikan firebase maka kita butuh beberapa library package dari google repositorie, seperti com.google.gms.google-services. Buka project android studio kalian dan lakukan step-step berikut,
  1. Buka build.gradle di level project kemudian tambahkan kode berikut
    buildscript {
      repositories {
        // Check that you have the following line (if not, add it):
        google()  // Google's Maven repository
      }
      dependencies {
        ...
        // Add this line
        classpath 'com.google.gms:google-services:4.3.3'
      }
    }
    
    allprojects {
      ...
      repositories {
        // Check that you have the following line (if not, add it):
        google()  // Google's Maven repository
        ...
      }
    }
  2. Kemudian buka build.grade level aplikasi (module) dan tambahkan kode berikut
  3. apply plugin: 'com.android.application'
    // Add this line
    apply plugin: 'com.google.gms.google-services'
    
    dependencies {
        implementation 'com.google.firebase:firebase-messaging:19.0.1'
    }
    Dan silahkan kalian klik Sync Now (Butuh koneksi internet).

Membuat Notification

1. Buat sebuah class yang mengimplementasikan FirebaseMessagingService,
package com.zain.tutorialgson
import com.google.firebase.messaging.FirebaseMessagingService
import com.google.firebase.messaging.RemoteMessage

class MyFireBaseNotification : FirebaseMessagingService(){
    override fun onMessageReceived(p0: RemoteMessage?) {
        super.onMessageReceived(p0)
       
    }

    override fun onNewToken(p0: String?) {
        super.onNewToken(p0)

    }
}
2. Kemudian di dalam callback methode onMessageReceived tambahkan code untuk mencreate notifikasi, sehingga codenya menjadi seperti berikut,
override fun onMessageReceived(p0: RemoteMessage?) {
        super.onMessageReceived(p0)
        val notificationIntent = PendingIntent.getActivity(this, 0,
            Intent(this, MainActivity::class.java), PendingIntent.FLAG_UPDATE_CURRENT)
        val notificationBuilder = NotificationCompat.Builder(this, "channel_id")
            .setContentTitle(p0?.notification?.title)
            .setContentIntent(notificationIntent)
            .setContentText(p0?.notification?.body)
            .setPriority(NotificationCompat.PRIORITY_DEFAULT)
            .setStyle(NotificationCompat.BigTextStyle())
            .setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))
            .setAutoCancel(true)

        val notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
        notificationManager.notify(0, notificationBuilder.build())
    }
3. Kemudian dibagian manifiest silahkan daftarkan servicenya
<service android:name=".MyFireBaseNotification">
    <intent-filter>
        <action android:name="com.google.firebase.MESSAGING_EVENT"/>
    </intent-filter>
</service>
4. Berlangganan Topic(Opsional)
Kalian bisa memfilter notifikasinya berdasarkan topik apa yang kalian subcribe. Tulis code berikut di activity kalian,
FirebaseApp.initializeApp(this)
        FirebaseMessaging.getInstance().subscribeToTopic("deretcode") //THis for by topic
            .addOnCompleteListener { task ->
                var msg = "success"
                if (!task.isSuccessful) {
                    msg = "gagal"
                }
                Log.d(TAG, msg)
            }
        mPresenter.checkSessionStatus()
Penjelasan: Code subscribeToTopic("deretcode") akan mebuat aplikasimu hanya akan menampilkan notifikasi dengan topic "deretcode" saja jika push notifaksinya berdasarkan topik tertentu.

Test Aplikasi

 Ada dua cara pengetesan yang bisa di lakukan apakah aplikasi android kita sudah bisa menampilkan notifikasi atau tidak, pertama langsung dari firebase dan yang kedua menggunkan aplikasi penguji api service seperti postman.
Langsung dari firebase
1. Klik Clud Messaging dan klik Send your first message
2. Isi Judul dan isi notifikasi dan klik tombol berikutnya.
3. Kemudian atur target clientnya, bisa berdasarkan Aplikasi atau topik
4. Atur penjadwalan, kapan push notifikasi di lakukan

5. Klik tinjau dan silahkan publikasi
Menggunakan Postman
1. Silahkan kalian buka aplikasi postman atau jika belum install silahkan download dan install terlebih dahulu postman nya.
2. Buat page request baru dan atur seperti berikut
Url https://fcm.googleapis.com/fcm/send
Methode: Post
Header Key1Content-Type dan Value: application/json
Header Key1Authorization dan Value: key=<server-key-fcm-mu>
Cara mendapatkan api key, seperti gambar berikut

3. Klik tab Body, pilih raw dan pilih Json type kemudin isi format jsonnya seperti berkut,
{
 "to": "/topics/NAMA_TOPICNYA",
 "data": {
  "title": "Judul Notif",
  "message": "Isi Notifikasi",
  "sound": "default",
  "type": 1
 }
}
4. Kemudian kalian bisa klik tombol send.

Sampai disini harusnya aplikasi android kalian sudah bisa menampilkan notifikasinya. Kalo belum silahkan kalian periksa lagi step by step mungkin ada yang terlewatkan, atau bisa kalian tanyakan di kolom komentar.

Sekian dulupostingan kali ini. Jangan lupa di share jika kalian merasa artikel ini bermanfaat, kalau ada pertanyaan silahkan tulis di kolom komentar. Good Luck! :)
advertisement



0 Komentar untuk " Tutorial Membuat Push Notification Android Menggunakan Firebase "

Silahkan berkomentar dengan baik dan bijak!