PMO PERTEMUAN 4 – NOTIFICATION ,DIALOG ,INTENT

Notification

Adalah pesan pemberitahuan yang dapat ditampilkan kepada pengguna, diluar user UI dari aplikasi. Bila kita memberi tahu sistem untuk mengeluarkan pemberitahuan, pemberitahuan akan muncul lebih dahulu sebagai ikon dalam notification area. Untuk melihat detail pemberitahuan, pengguna membuka notification drawer. Baik notification area maupun notification drawer adalah area-area yang dikontrol sistem yang bisa dilihat pengguna kapan saja.

Gambar 1. Pemberitahuan di notification area.

Gambar 2. Pemeberitahuan di notification drawer

Biasanya akan muncul jika sesuatu terjadi, misalnya : diterima Pesan Baru, Email Baru, Ada panggilan tak terjawab dll.

  • Penerapan pada program :

public class MainActivity extends AppCompatActivity {

// identititas id unik untuk notification

public static final int NOTIFICATION_ID = 1;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

 

getSupportActionBar().setSubtitle(“Belajar di okedroid.com”);

}

 

public void tampilNotification(View view) {

/*

Menmbangun atau mensetup Notification dengan NotificationCompat.Builder

*/

NotificationCompat.Builder builder = (NotificationCompat.Builder) new NotificationCompat.Builder(this)

.setSmallIcon(R.mipmap.ic_launcher) //ikon notification

.setContentTitle(“Notifikasi Saya”) //judul konten

.setAutoCancel(true)//untuk menswipe atau menghapus notification

.setContentText(“Hello Okedroid”); //isi text

/*

Kemudian kita harus menambahkan Notification dengan menggunakan NotificationManager

*/

NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

 

notificationManager.notify(NOTIFICATION_ID, builder.build()

);

} }

 

Dialog

Jendela kecil yang meminta pengguna untuk membuat keputusan atau memasukkan informasi tambahan. Dialog tidak mengisi layar dan biasanya digunakan untuk kejadian yang mengharuskan user untuk melakukan aksi sebelum bisa melanjutkan.

Contoh : Saat akan keluar dari program muncul pertanyaan “Apakah Anda yakin akan keluar ?”

  1. Jika user menjawab Yes, maka program akan dihentikan
  2. Jika user menjawab No, maka program akan dilanjutkan
  • Beberapa jenis dialog meliputi:
  1. Alert/Peringatan Adalah gangguan mendesak yang menginformasikan situasi dan memerlukan pengakuan.
  2. Simple menus /Pilihan menu tampilan sederhana untuk item daftar, sedangkan simple dialogs/dialog sederhana dapat memberikan rincian atau tindakan tentang item daftar.
  3. Confirmation dialogs/Dialog konfirmasi mengharuskan pengguna untuk secara eksplisit mengkonfirmasi pilihan.
  • Penerapan pada program :

package contoh.alertDialog;

 

import android.app.Activity;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.os.Bundle;

import android.widget.Button;

import android.widget.Toast;

import android.view.View;

 

public class alertDialog extends Activity implements View.OnClickListener {

Button pesanToast;

Button keluar;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

 

pesanToast=(Button)findViewById(R.id.toast);

pesanToast.setOnClickListener(this);

 

keluar=(Button)findViewById(R.id.exit);

keluar.setOnClickListener(this);

}

 

public void onClick(View view){

if(view==pesanToast){

Toast.makeText(this, “Anda memilih Toast”, Toast.LENGTH_SHORT).show(); }

else if(view==keluar){

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setMessage(“Apakah Anda Benar-Benar ingin”+ “ keluar?”).setCancelable(false)

.setPositiveButton(“Ya”,new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog,int id) {

alertDialog.this.finish();}

})

.setNegativeButton(“Tidak”,new DialogInterface.OnClickListener(){

public void onClick(DialogInterface dialog, int id) {

dialog.cancel();}}).show();

}

}

}

 

Intent

Suatu pesan yang digunakan untuk mengaktifkan tiga komponen dasar pada aplikasi Android yaitu Activity, Service, dan Broadcast Receiver. Aktifasi pada komponen-komponen tersebut bisa terjadi pada aplikasi yang sama atau berbeda, seperti menjalankan Activity, inisiasi Service, atau pengiriman pesan kepada Broadcast Receiver. Pada saat terjadi komunikasi antar komponen, Intent menyimpan paket informasi yang digunakan pada proses tersebut.

Beberapa contoh mekanisme pengiriman Intent pada masing-masing jenis komponen :

  1. Object Intent untuk menjalankan Activity baru atau memerintahkan Activity melakukan sesuatu dengan mempassing object Intent pada fungsi Context.startActivity() atau Acvity.startActivityForResult().
  2. Object Intent untuk menginisiasi sebuah Service baru atau melakukan sesuatu pada Service yang sedang berjalan dengan mempassing object Intent pada fungsi Context.startService().
  3. Object Intent untuk mengirimkan pesan kepada seluruh Broadcast Receiver dengan mempassing object Intent pada fungsi Context.sendBroadcast(), Context.sendOrderedBroadcast(), atau Context.sendStickyBroadcast().
  • Intent Untuk Transfer Data

Intent dapat digunakan untuk transfer data antar Activity. Pada saat sebuah Activity memanggil Activity yang lain, Intent dapat menyimpan data informasi yang ikut dikirimkan pada pemanggilan tersebut, seperti berikut ini.

Intent intent = new Intent( this, ActivityProfile.class);

intent.putExtra( “NAMA”, “dian” );

intent.putExtra( “UMUR”, 17);

startActivity(intent);

 

Pada pemanggilan Activity tersebut, dikirimkan informasi berupa data NAMA dengan nilai String “dian” dan data UMUR dengan nilai integer 17. Informasi tersebut dapat ditangkap oleh activity yang dipanggil dengan code seperti ini.

Bundle extras = getIntent().getExtras();

String nama = extras.getString(“NAMA”);

int umur = extras.getInt( “UMUR”);

  • Intent untuk melakukan aktifitas tertentu

Mengirim email, membuka halaman website, merupakan aktifitas-aktifitas yang biasanya ada pada aplikasi Android. Intent dapat memanggil aplikasi lain untuk mengerjakan aktifitas tersebut, seperti memanggil aplikasi Gmail untuk mengirim email, aplikasi browser seperti Opera atau Chrome untuk membuka halaman website. Beberapa contoh pemanfaatan Intent untuk melakukan aktifitas tertentu dengan bantuan aplikasi lain :

  1. Intent untuk mengirim email

Intent emailIntent = new Intent(android.content.Intent. ACTION_SEND );

String emailList[] = { “diandeveloper@gmail.com” };

emailIntent.putExtra(android.content.Intent. EXTRA_EMAIL , emailList);

emailIntent.setType( “plain/text” );

emailIntent.putExtra(android.content.Intent. EXTRA_SUBJECT ,

“[diandeveloper – Mengenal Intent]” );

startActivity(Intent. createChooser(emailIntent, “Send via”));

 

FILE PRESENTASI BISA DIDOWNLOAD: Click here (Pertemuan 4)

 

Source:

https://diandeveloper.wordpress.com/2013/11/16/android-intent/

https://developer.android.com/guide/topics/ui/dialogs.html?hl=id

https://developer.android.com/guide/topics/ui/notifiers/notifications.html?hl=id#ApplyStyle


ANGGOTA KELOMPOK 2 :

  • Ikmam Nur Fauzi (15.11.0016)
  • Bagas Pratikto (15.11.0019)
  • Suprayitno (15.11.0032)
  • Yusuf Budiaji (15.11.0037)
  • Upit Liana Sari (15.11.0042)
  • Edi Susanto (15.11.0046)
  • Adimas Dwi Nur H. (15.11.0062)