Hai sobat, bertemu lagi dengan saya di tutorial android. Pada artikel sebelumnya saya telah menjelaskan sedikit tips dan trik untuk menjadi programmer yang sehat rohani dan jasmani serta cara menjaga mata agar tetap sehat walaupun bekerja di depan komputer seharian. Dan kali ini saya ingin menjeleskan tentang bagaimana membuat notifikasi android menggunakan komponen Notification.
Notifikasi adalah fitur yang paling banyak digunakan pada aplikasi untuk memberikan informasi ke pada pengguna. Notifikasi dikirimkan jika terdapat sesuatu yang penting untuk disampaikan kepada pengguna. Notifikasi dapat ditampilkan di berbagai platform dan sistem operasi. Android juga dapat menampilkan notifikasi yang bisa tampil di bagian status bar.
Untuk menampilkan notifikasi di Andoroid, kita dapat menggunakan beberapa kompoenen seperti komponen Notification, NotificationCompat.Builder dan NotificationManager. Di dalam komponen NotificationCompat.Builder memiliki beberapa method yang memiliki masing-masing fungsi yaitu seperti berikut ini :
- build() : untuk mengampung semua pengaturan pada notifikasi dan mengirimkanya ke notifikasi yang baru
- setAutoCancel() : untuk mengatur notifikasi agar tertutup setelah diklik
- setContent() : untuk menampilkan notifikasi menggunakan tampilan yang telah kita buat
- setContentInfo() : menampilkan teks informasi di notifikasi
- setContentIntent : untuk mengarahkan sistem menggunakan Pending Intent ketika notifikasi diklik.
- setContentText() : untuk menampilkan teks kedua di dalam notifikasi (pesan)
- setContentTitle() : enampilkan teks pertama di dalam notifikasi (judul)
- setLargeIcon() : menampilkan icon besar pada notifikasi
- setSmallIcon() : menampilkan icon besar pada notifikasi
Nah, itu adalah beberapa kompoenn yang dapat kita atur untuk menampilkan notifikasi di aplikasi android. Untuk itu, sekarang kita mulai membuatnya. Silahkan ikuti langkah-langkah berikut ini :
Membuat Project Baru
Biat project baru dengan nama Simple Notification dengan jenis activity Empty Activity.
Membuat Tampilan
Pada aplikasi ini, kita akan membuat aplikasi yang menampilkan notifikasi yang memberikan informasi dengan teks yang dimasukkan oleh pengguna di dalam aplikasi ini. Untuk melakukanya kita mebutuhkan dua buah koponen EditText, dan satu buah komponen Button. Silahkan tambahkan komponen tersebut dengan cara membuka file activity_main.xml dan buat kodenya seperti berikut ini
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.blogspot.blogsetyaaji.simplenotification.MainActivity">
<LinearLayout
android:layout_width="0dp"
android:layout_height="495dp"
android:layout_marginBottom="0dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginTop="0dp"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent">
<EditText
android:id="@+id/txtJudul"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Judul"
android:inputType="textPersonName" />
<EditText
android:id="@+id/txtpesan"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Pesan"
android:inputType="textPersonName" />
<Button
android:id="@+id/btnkirim"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Kirim" />
</LinearLayout>
</android.support.constraint.ConstraintLayout>
Jika sudah ditambahkan, maka kurang lebih tampilanya seperti berikut ini
Atau jika sobat ingin membuat desain sendiri dan mempelajari tataletak tampilan notifikasi, sobat dapat mempelajarinya di dokumentasi material design notification.
Membuat Kode Java
Setelah membuat tampilan aplikasi notifikasi, sekarang kita buat kode pada file java. Kita buat agar nanti setelah tombol pada tampilan diklik, maka akan menampilkan notifikasi dengan teks judul sesuai teks yang dimasukkan ke dalam kolom judul dan menampilkan isi notifikasi sesuai teks yang diamasukkan ke dalam kolom pesan.
Pada tombol kita tambahkan aksi setOnClickListener dan di dalamnya kita tambahkan kode untuk menampilkan notifikasi di android. Untuk membuatnya, silahkan buka file MainActivity.java dan buat kodenya seperti berikut ini :
package com.blogspot.blogsetyaaji.simplenotification;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.app.NotificationCompat;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
// deklarasi kode request
public static final int notifikasi = 1;
// deklarasi tombol
Button btnkirim;
// deklarasi edittext
EditText txtjudul, txtpesan;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// inisialisasi komponen
btnkirim = (Button) findViewById(R.id.btnkirim);
txtjudul = (EditText) findViewById(R.id.txtJudul);
txtpesan = (EditText) findViewById(R.id.txtpesan);
// aksi letika tombol diklik
btnkirim.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// membuat komponen Inten
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
// memanggil method untuk menampilkan notifikasi
// dengan mengirimkan data yang dikirim dari komponen EditText
tampilNotifikasi(txtjudul.getText().toString()
, txtpesan.getText().toString(), intent);
}
});
}
private void tampilNotifikasi(String s, String s1, Intent intent) {
// membuat komponen pending intent
PendingIntent pendingIntent = PendingIntent.getActivity(MainActivity.this
, notifikasi, intent, PendingIntent.FLAG_UPDATE_CURRENT);
// membuat komponen notifikasi
NotificationCompat.Builder builder = new NotificationCompat.Builder(MainActivity.this);
Notification notification;
notification = builder.setSmallIcon(R.mipmap.ic_launcher)
.setAutoCancel(true)
.setContentIntent(pendingIntent)
.setContentTitle(s)
.setSmallIcon(R.mipmap.ic_launcher)
.setLargeIcon(BitmapFactory.decodeResource(MainActivity.this.getResources()
, R.mipmap.ic_launcher))
.setContentText(s1)
.build();
notification.flags |= Notification.FLAG_AUTO_CANCEL;
NotificationManager notificationManager = (NotificationManager) MainActivity.this
.getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(notifikasi, notification);
}
}
Pada kode di atas, terdapat kode PendingIntent yang berfungsi untuk memberikan tujuan ketika notifikasi diklik. Dan di sini kita atur menjadi auto cancel agar notifikasi akan menghilang setelah diklik.
Silahkan jalankan aplikasi notifikasi yang sudah kita buat, maka tampilannya kurang lebih seperti ini
Silahkan jalankan aplikasi notifikasi yang sudah kita buat, maka tampilannya kurang lebih seperti ini
Untuk sobat yang ingin melihat pembuatanya, ini saya berikan videonya, semoga membantu hehe 😁
Untuk sobat yang ingin mendownload project ini, silahkan bisa mampir di github saya
Sekian artikel tentang Membuat Aplikasi Android Notifikasi Sederhana Menggunakan Android Studio, semoga bermanfaat. Jika sobat merasa suka dengan artikel ini, silahkan bisa dibagikan ke sobat lainya karena berbagi itu indah dan pasti ada ganjaranya hehe.. Apabila sobat ada kesulitan, atau memiliki kritik seta saran, silahkan bisa komentar di bawah. Terimakasih, sampai jumpa di artikel selanjutnya.. 😄