PENGENALAN
EXPLICIT INTENT DAN IMPLICIT INTENT PADA ANDROID STUDIO
A. Intent
Membuat aplikasi mobile khususnya Android, mungkin membutuhkan lebih dari satu activity. Pengolahan data atau
menjalankan tugas tidak memungkinkan dilakukan
pada UI main thread, karena
jika tugas ini membutuhkan waktu yang lama aplikasi akan mengalami
force close. Aplikasi Android juga menjalankan tugas berdasarkan event yang diterima.
Hal-hal ini dapat dilakukan menggunakan konsep Intent.
Di Android, kemampuan mengirim
pesan dimungkinkan dengan objek Intent. Dengan
bantuan intent, komponen Android bisa meminta fungsional dari komponen Android
lain. Saat kamu membuka aplikasi
Instagram di handphonemu dan menggunakannya untuk mengambil foto, kamu menggunakan intent. Intent juga membantu
mengkomunikasikan bagian dari sebuah aplikasi; perpindahan dari satu layar (aktifitas)
ke layar lain dimungkinkan
dengan intent.
Intent merupakan sebuah mekanisme
yang digunakan untuk melakukan sebuah aksi
dari komponen aplikasi. Untuk dapat melakukan sebuah aksi pada sebuah intent, ada 3 cara yang dapat dilakukan:
1)
Menjalankan sebuah
activity lain baik dengan data ataupun tanpa data
2)
Membuat sebuah service untuk menjalankan pekerjaan
tertentu pada sebuah
background/non main thread.
3)
Mengirimkan sebuah
broadcast. Pesan yang dikirimkan dalam keadaan tertentu, misalkan ketika booting atau sedang melakukan pengisian data
baru mengirimkan data.
Dikutip dari web developer.android.com intent merupakan objek yang menyediakan waktu proses yang mengikat komponen-komponen terpisah. Intent biasanya digunakan untuk berpindah ke
activity lain pada aplikasi android. Agak rumit dipahami memang. mudahnya intent adalah cara untuk memberikan Action pada komponen dalam satu aplikasi yang sama maupun aplikasi lain jika diweb kita mengenalnya dengan isitlah Hyperlink.
Terdapat 2 model
Intent dalam pemrograman Android yaitu:
a)
Explicit Intent
berfungsi untuk mengaktifkan komponen-komponen dalam satu
aplikasi yang sama.
Misalnya seperti : Berpindah Activity.
b)
Implicit Intent berfungsi untuk memanggil fungsi activity yang sudah ada di fungsi
internal android seperti
Dial Number, Open Browser dan lainnya.
Fungsi Intent
a)
Untuk berpindah
halaman dari satu Activity
ke Activity lain. Contohnya : Kita membuat aplikasi dengan 3 Activity.
Activity utama berisi tombol informasi dan login.
Ketika tombol informasi di klik akan tampil activity informasi begitupun dengan tombol login
ketika di klik akan menampilkan activity login.
b)
Untuk transfer data
dari satu Activity ke Activity lain. Contohnya : Pada saat kita mengisi data pada Activity login maka
nanti akan ditampilkan informasinya pada Activity infomasi user.
c)
Untuk memanggil
activity pada internal android seperti Melakukan Dial Number, Open Email ataupun
lainnya.
B. Explicit Intent
Explicit intent digunakan untuk
memanggil Activity lain yang masih dalam satu
project ataupun berbeda. Pemanggilan Intent secara explicit dengan
menentukan nama Activity tujuan.
Intent membutuhkan dua parameter, yang pertama adalah Context (dapat didapatkan dari Activity atau Application) dan berikutnya adalah nama NamaActivity.class.
Intent
intent = new Intent(this, NextActivity.class);
startActivity(intent);
Pada contoh berikut ini, kita akan membuat sebuah
Apps dengan menggunakan fungsi intent
explicit, langkahnya seperti berikut
ini:
1.
Pertama jalankan
aplikasi IDE Android
Studio, caranya :
a.
Pilih Start ®
Android
Studio
b.
Pilih ®
Start
a new Android Studio
Project
c.
Pilih ®
Empty
Activity ®
Next
Configure Your Project
Name ®
IntentEksplisit
Package Name → Biarakn Apa
Adanya
Save Location → C:\Users\ACER\AndroidStudioProjects\NamaFolder\ IntentEksplisit
Language
→ Java
Minimum API
Level → API 16 → Klik Finish
2. Maka akan Tampil IDE Android Studio, setelah itu Buka dan ubah script activity_main.xml menjadi seperti gambar di bawah ini
maka akan terlihat
seperti ini:
3. Setelah itu Buka dan ubah script MainActivity.java menjadi seperti gambar di bawah ini
4. Buat sebuah Activity baru dengan Nama SecondActivity dengan cara seperti gambar di bawah ini
5. Selanjutnya Buka dan ubah script activity_second.xml menjadi seperti gambar di bawah ini
6. Selanjutnya Buka dan ubah script SecondActivity.java menjadi seperti gambar di bawah ini
7. Setelah itu Buka dan ubah script String.xml menjadi seperti di bawah ini
8. Buat file dimens.xml di dalam folder Res/Values lalu ketikan script nya seperti dibawah ini
9. Sesuaikan script AndroidManifest.xml seperti di bawah ini untuk mendaftarkan komponen Intent Filter yang ada
10. Lalu coba jalankan menggunakan emulator yang tersedia
di Android Studio Anda, maka
akan tampil seperti
gambar dibawah ini
C. Implicit Intent
Intent Implisit adalah Intent yang
tidak memiliki target dan melempar tugas ke aplikasi
lainnya. Intent jenis ini mengirim pesan dan permintaan, lalu System Android
akan mencari aplikasi yang dapat mengabulkan permintaan Intent. Aplikasi yang siap akan menangkap tugas yang diberikan menjalankan tugas.
Gambaran Sorce code dari intent
implisit, Source di dibawah ini dapat memanggil komponen browser untuk URL tertentu menggunakan intent.
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.unggasid.com")); startActivity(intent);
Terkadang pada aplikasi Android yang dibangun, membutuhkan activity bawaan yang telah disediakan oleh Android. Pemanggilan Intent ini dilakukan secara implicit. Pada umumnya untuk melakukan ini, cukup dengan mendefinisikan aksi tertentu (dapat menggunakan konstanta pada Intent yang umumnya menggunakan prefiks ACTION). Aplikasi yang umum digunakan antara lain:
Ø
Call
Ø Dialpad
Ø Contact
Ø Browser
Ø Call Log
Ø Gallery
Ø Camera
Sebagai contoh pemanggilan Gallery yang berisi gambar, dapat dilihat pada kode
berikut.
Intent intent = new Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CO NTENT_URI);
Pada contoh berikut ini, kita akan membuat sebuah
Apps dengan menggunakan fungsi intent implicit, langkahnya seperti berikut ini:
1. Pertama jalankan
aplikasi IDE Android
Studio, caranya :
a.
Pilih Start ®
Android
Studio
b.
Pilih ®
Start
a new Android Studio
Project
c.
Pilih ®
Empty
Activity ®
Next
Configure Your Project
Name ®
ImplicitIntens
Package Name → Biarakn Apa
Adanya
Save Location → C:\Users\ACER\AndroidStudioProjects\NamaFolder\ ImplicitIntens
Language
→ Java
Minimum API Level → API 16 → Klik Finish
2.
Maka akan Tampil IDE Android Studio,
setelah itu Buka dan ubah script string.xml
menjadi seperti di bawah ini
3. Setelah itu Buka dan ubah script activity_main.xml menjadi seperti di bawah ini
Bentuk layout dan blueprint dari file di
atas akan tampil ceperti
gambar di bawah ini
4. Selanjutnya Buka dan ubah script AndroidManifest.xml untuk mendaftarkan komponen Intent filter menjadi seperti gambar di bawah ini
5. Buat file dimens.xml di dalam folder Res/Values lalu ketikan script nya seperti dibawah ini
6. Selanjutnya ubah script MainActivity.java menjadi seperti di bawah ini
7. Lalu coba jalankan menggunakan emulator yang tersedia di Android Studio Anda, maka akan tampil seperti gabar dibawah ini
Ketika kita tekan tombol OPEN WEBSITE maka akan tampil web browser seperti gambar di bawah ini
Ketika kita tekan tombol OPEN LOCATION maka akan tampil Google Map seperti gambar di bawah ini
Ketika kita tekan tombol
SHARE THIS TEXT maka
akan tampil pilihan
Apps yang dapat
melakukan share dalam system
default android seperti
gambar di bawah ini
































0 komentar:
Posting Komentar