Dasar pengembangan aplikasi Android – Part II

How AsyncTask Work
Advertisements

Dasar Pengembangan aplikasi Android – Part II. Halo adiks, kali ini kita akan melanjutkan membahas mengenai dasar-dasar pengembangan aplikasi Android. Pada artikel sebelumnya, kita sudah membahas mengenai Working in Foreground, bagi adiks yang belum membaca artikel sebelumnya, adiks bisa akses di link ini.

Dalam mengembangkan aplikasi android, service yang berjalan di background merupakan hal yang urgent untuk mendukung agar aplikasi yang adiks bangun menjadi lebih cepat dalam menyajikan informasi kepada penggunanya. Untuk memahami fungsi dari service yang bisa berjalan di backround mari kita simak penjelasan berikut.

2. Working in the Background and
Asynchronously

A. Service

Komponen aplikasi android yang tidak memiliki User Interface dan berjalan di layar (Background). Bekerja secara background bukan berarti bekerja asynchronous. Dan juga memiliki daur hidup sewaktu dijalankan. Salah
satu contoh penggunaan service pada aplikasi pemutar musik yang tetap berjalan aplikasi sudah ditutup dan aplikasi chatting.

Service Hierarchy

Service Hierarchy
Service Hierarchy

Implementasi

Public class MyIntentService extends IntentService {

    public void onHandleIntent(Intent intent) {

        ... 

    }

}

Untuk memahami cara kerja service di Android, adiks dapat melihat gambar cara kerja service di android berikut.

how service work
how service work

 

B. Working Asynchronously

AsyncTask

Advertisements

Semua komponen aplikasi Android pada dasarnya adalah berjalan pada satu yang sama yaitu UI Thread atau disebut  Thread. Jika kita memiliki proses yang bersifat komputasi intensif dan memakan waktu yang pada UI Thread  akan menyebabkan aplikasi hang dan memicu berupa application is not responding (ANR).

Komponen aplikasi yang memiliki kemampuan untuk menjalankan proses asynchronous dan tetap bisa dengan UI Thread untuk hasil proses yang dilakukan tanpa melanggar dua aturan utama berlaku yaitu:

  1. Tidak melakukan blocking User Interface
  2. Tidak melakukan akses kepada komponen tampilan aplikasi di dalam thread yang berbeda.

Implementasi

private class DemoAsyncTask extends AsyncTask<String, Void, String> {

    protected void onPreExecute() {

    }

    protected String doInBackground(String… params) {

    }

    protected void onPostExecute(String S) {

    }

}

Untuk memahami cara kerja AsyncTask, silahkan di perhatikan gambar berikut.

How AsyncTask Work
How AsyncTask Work

Demikianlah komponen dasar yang harus pahami dalam blok yang berhubungan dengan proses yang berjalan di background pada aplikasi android.

Advertisements

Untuk blok lainnya akan kita bahas dalam artikel selanjutnya adiks.

Salam,
KaceAmir

Leave a Reply

Your email address will not be published. Required fields are marked *