Hae haes, ayo kita liat terlebih dahulu pengertian Intent menurut website resmi Android Developer: “An intent is an abstract description of an operation to be performed“. Entah kenapa menurut gue, pengertian-pengertian dari website Android Developer itu simple tapi ambigu yah?..
Simple nya, Intent itu adalah penghubung antar Activity. Suatu Intent dapat mengirimkan data antar Activity (disebut Explicit Intent) dan juga bisa mengirimkan data ke aplikasi lain (disebut Implicit Intent). Okay, kita bahas satu-satu yah..
1. Explicit Intent
Intent ini sangat sering digunakan ketika berpindah activity, begini bahasa aliennya :
val Intent = Intent(this@MainActivity, SecondActivity::class.java)
startActivity(Intent)
Intent untuk berpindah activity terdapat 2 parameter, parameter yang pertama adalah context, yang dalam hal ini dapat dituliskan dengan this@MainActivity, kemudian untuk parameter berikutnya adalah tujuan activity mana yang akan kita buka, yang dalam hal ini adalah activity dengan nama SecondActivity. Karena dituliskan dengan bahasa Kotlin maka harus ditambahkan ::class.java dibagian belakangnya. Selanjutnya Intent yang dibuat tinggal dijalankan dengan startAcitivity.
2. Implicit Intent
Okay gaes, lanjut ke yang kedua, Intent ini digunakan ketika kita membutuhkan fitur diaplikasi lain, tanpa harus menambahkan ke apikasi kita. Contohnya ketika kita menginginkan fitur untuk membuka gambar/foto, kita tidak harus membuatnya lagi, kita bisa langsung menggunakan aplikasi bawaan hp kita seperti gallery untuk membukanya.
Nah begini bahasa aliennya :
const val SELECT_PICTURE = 1
val galleryIntent = Intent(Intent.ACTION_PICK)
galleryIntent.setType(“image/*”)
startActivityForResult(Intent.createChooser(galleryIntent, “Select Picture”), SELECT_PICTURE)
SELECT_PICTURE adalah konstanta yang berfungsi untuk menyimpan data foto yang diambil nantinya. Intent yang digunakan disini hanya 1 parameter, yaitu ACTION.PICK yang digunakan untuk melakukan aksi pengambilan, yang dalam hal ini untuk mengambil gambar/foto. Kemudian setType(“image/*”) adalah untuk melihat semua data yang bertipe gambar/foto. Selanjutnya adalah menjalankan Intent dengan menggunakan galleryIntent sebagai aplikasi untuk pengambilan gambar/fotonya dan kemudian akan disimpan didalam SELECT_PICTURE.
Yah kurang lebih begitulah soal Intent. Dah ya, gue mau ganggu kucing gue dulu.


Leave a comment