Android Runtime Linux Kernel

✂✄ m ☎ r ☎ p r ☎✆ ☎ n t ✝✆ ✞✟ ✝ n ✆ ☎✆ ☎ o r ✝ n ✠ ✡ ☛☞ ✝ tu ✝✌✍✞✟ ✝✆ ✞ m ☎ m ✌☞✎✍✞✟ ✝✆ ✞✟ ✝ n ✏ n t ☎ n t ✑✞✍ t ☎ r ✌✝✒ ✝ fil ✓ ✔✕ ✒ ✖✗ ✞ ✒ ✘ ✝ ✕ ✞ ✙ ☎ st ✡ ✚ m ✍ [4]. Navigasi dari suatu s ✛✜ ✓ ✓ n ke ✢ ✛ r ✓✓ n lainnya dipenuhi dengan cara me- ✜ ✓ so lv ✓ in t ✓ n t . Untuk melakukan navigasi ke depan, ✣ ✛ tivity memanggil startActivitymyIntent. Sistem akan mencari IntentFilter untuk semua aplikasi dan memilih ✣ ✛ tivity yang IntentFilter-nya yang paling mendekati dengan myIntent. ✣ ✛ tivity baru akan mendapat informasi tentang in t ✓ n t yang menyebabkan ✣ ✛ tivity tersebut dijalankan. Proses pencarian in t ✓ n t terjadi sewaktu runtime pada saat startActivity dipanggil. Hal tersebut membawa keuntungan sebagai berikut:  ✤✛ tivity dapat melakukan ✜ ✓ ✥ ✢ ✓ f ✥✦✛ ti ✧ ✦ ✣ ★ ity dari komponen lain dengan cara melakukan permintaan dalam bentuk in t ✓ n t .  ✤✛ tivity dapat di ✜ ✓ p l ✣ ✛ ✓ kapan pun dengan ✣ ✛ tivity yang ekuivalen.

2.5.10.3 Intent Recivier

✩ n t ✓ n t ✪ ✓ ✛ ✓ iv ✓ r dapat digunakan pada saat kita menginginkan kode kita dijalankan akibat reaksi dari ✓ xt ✓ ✜ ✦ ✣ ★ ✓ v ✓ n t tertentu. Contohnya, pada saat telepon berbunyi, atau pada saat ada data pada jaringan, atau pada suatu waktu tertentu. IntentReceiver tidak menampilkan ✥ ✢ ✓ r in t ✓ rf ✣ ✛ ✓ , meskipun ia dapat menggunakan Notification Manager untuk memperingatkan u s ✓ r apabila sesuatu terjadi. ✩ n t ✓ n t ✪ ✓ ✛ ✓ iv ✓ r didaftarkan pada fil ✓ AndroidManifest.xml, tetapi secara manual juga bisa ditambahkan dengan fungsi Context.registerReceiver. Suatu aplikasi tidak harus berjalan pada ✩ n t ✓ n t ✪ ✓ ✛ ✓ iv ✓ r nya agar bisa dipanggil, tetapi ✫✬ ✭ ✮ st ✯ m y ✰ n ✱ ✰ ✲✰ n m ✯✳ ✴ ✰ ✵✰✳ ✲✰ n ✰✶✵✮ ✲ ✰ ✭ ✮ t ✯ r ✭ ✯✷ ✸✹✺ ✻ ✶ ✰✷✮✵✰ ✼✮ ✶ ✯ r ✵ ✸✲✰✳ ✽ ✶✰ ✼✰ ✭ ✰✰ t ✾ n t ✯ n t ✿ ✯ ❀ ✯✮ ❁ ✯ r m ✯✳ ✼ ✰ p ✰ t tri ❂ ❂❃ r ✽ ✰✶ ✵ ✮ ✲✰ ✭ ✮ ✴✸✱✰ ✼✰✶✰ t m ✯ n ✱ ✮ r ✮ m ✲ ✰ n in t ❃ n t ❄❅ ❆❇ ❈❉❇ ❊ ❋ ✲ ✯✶ ✰ ✼ ✰ ✰✶ ✵✮ ✲ ✰ ✭ ✮ ✵✰✮ n n y ✰ ✼✯ n ✱✰ n ● u n ✱ ✭ ✮ Context.broadcastInten t [4].

2.5.10.4 Service

❍ ❃ rvi ❉ ❃ adalah sebuah kode yang hidup terus-menerus dan berjalan tanpa memiliki tampilan. Contoh yang sederhana adalah suatu aplikasi m ❃ ❈ ■ ❇ p l ❇ ❏❃ r yang sedang memainkan lagu dari p l ❇ ❏ list ❑ Pada aplikasi m ❃ ❈ ■ ❇ p l ❇ ❏❃ r , kemungkinan terdapat satu atau lebih activity yang memperbolehkan ▲ ❊ ❃ r memilih lagu dan memainkannya. Tetapi musik yang sedang diputar tidak boleh ditangani oleh activity karena ▲ ❊ ❃ r akan menginginkan musik tetap diputar meskipun ia berpindah ke ❊ ❉❅ ❃ ❃ n baru. Pada kasus ini activity m ❃ ❈ ■ ❇ p l ❇ ❏❃ r dapat menjalankan ❊ ❃ rvi ❉ ❃ menggunakan fungsi Context.startService untuk menjalankan ❊ ❃ rvi ❉ ❃ di ❄ ❇ ❉ k ❂ ❅ ❆ ▲ ▼ ❈ yang memutar musik. Sistem akan tetap memutar musik sampai selesai. Selain itu ❇ ❉ tivity dapat terhubung dengan ❊ ❃ rvi ❉ ❃ menggunakan fungsi Context.bindService. Pada saat terhubung, aplikasi dapat berkomunikasi melalui in t ❃ rf ❇ ❉ ❃ yang diberikan oleh ❊ ❃ rvi ❉ ❃ yang bersangkutan. Pada contoh m ❃ ❈ ■ ❇ p l ❇ y ❃ r , in t ❃ rf ❇ ❉ ❃ ❊ ❃ rvi ❉ ❃ akan memberikan fungsi ◆❇ ▲ ❊ ❃ , ❅ ❃ w i ▼ ❈ dan sebagainya [4].

2.5.10.5 Content Provider

❖ o n t ❃ n t p ro vi ❈ ❃ r digunakan untuk pertukaran data antara aplikasi. Data yang dipertukarkan bersifat ❊ P ❇❅ ❃ ❈ . ❖ o n t ❃ n t p ro vi ❈ ❃ r adalah sebuah kelas yang