• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

2.7 Android

2.7.1 Sejarah Android

Awalnya, Google Inc. membeli Android Inc. yang merupakan pendatang baru dalam pembuatan peranti lunak untuk smartphone. Kemudian untuk mengembangkan android, dibentuklah Open Handset Alliance, konsorsium dari tiga puluh empat perusahaan piranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia (Safaat, 2011).

Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan open source pada perangkat mobile. Di lain pihak, Google merilis kode-kode android dibawah lisensi Apache, sebuah lisensi perangkat lunak dan open platform perangkat seluler. Pada masa ini kebanyakan vendor-vendor telah memproduksi smartphone dan tablet

berbasis android, vendor-vendor itu antara lain HTC, Samsung, LG, Sony Ericsson, Nexian dan masih banyak lagi vendor di dunia yang memproduksi smartphone maupun perangkat tablet berbasis Android. Hal ini dikarenakan Android adalah sistem operasi yang open source

sehingga bebas didistribusikan dan dipakai oleh vendor manapun (Safaat, 2011).

19

2.7.2 Versi Android

Berikut versi android sejak diluncurkan pertama kali : Tabel 2.6 Tabel Versi Android (Suprianto, 2012) Versi Android Diluncurkan Nama Kode

Beta 5 November 2007 1.0 23 September 2008 1.1 9 Februari 2009 1.5 30 April 2009 Cupcake 1.6 15 September 2009 Donut 2.0/2.1 26 Oktober 2009 Eclair 2.2 20 Mei 2010 Froyo 2.3 6 Desember 2010 Gingerbeard 3.0 22 Februari 2011 Honeycomb

4.0.1 19 Oktober 2011 Ice Cream Sandwich Sekitar Pertengahan 2012 Jelly Bean

20

2.7.3 Fitur-fitur Android

Sistem operasi android memiliki fitur-fitur sebagai berikut (Safaat,2011) :

a. Kerangka Kerja Aplikasi (application framework)

Digunakan untuk menulis aplikasi di android sehingga memungkinkan penggunaan kembali dan penggantian komponen. Kerangka kerja ini didukung oleh berbagai open source libraries seperti openssl, sqlite, dan libc serta didukung oleh libraries utama android. Kerangka kerja sistem operasi android didasarkan pada UNIX file system permission yang menjamin bahwa aplikasi-aplikasi tersebut hanya memiliki kemampuan yang diberikan oleh pemilik ponsel pada waktu penginstalan.

b. Dalvik Virtual Machine (DVM)

Dalvik Virtual Machine (DVM) adalah sebuah mesin virtual yang menggunakan memori yang sangat rendah dan secara khusus dirancang untuk android untuk dijalankan pada

embedded system. DVM bekerja dengan baik pada situasi dengan tenaga yang rendah dan mengoptimalkan perangkat

mobile. DVM juga mengatur atribut dari Central Processing Unit (CPU) serta membuat sebuah format file yang spesial (.dex) yang dibuat selama build time post processing. DVM mengambil file yang dihasilkan oleh class java dan

21

menggabungkannya ke dalam satu atau lebih Dalvik Executable

(.dex). DVM dapat menggunakan kembali salinan informasi dari beberapa class file dan secara efektif mengurangi kebutuhan penyimpanan oleh setengah dari Java Archive (.jar)

file tradisional. Konversi antara kelas java dan format (.dex)

dilakukan dengan memasukan “dx tool”.

DVM menggunakan assembly-code yang berbeda dimana DVM menggunakan register sebagai unit utama dari penyimpanan data daripada menggunakan stack. Hasil akhir dari

executable-code pada android, merupakan hasil dari DVM yang didasarkan

bukan pada java byte-code melainkan pada file (.dex). Hal ini berarti pada java byte-code tidak dieksekusi secara langsung melainkan dimulai dari java class file terlebih dahulu dan kemudian mengkonversikannya kedalam file (.dex) yang berhubungan.

c. Browser yang terintegrasi

Didasarkan pada open source WebKit engine yang memiliki dua

layout dan pengelompokan frame. Layout menampilkan

halaman tanpa menunggu untuk melakukan pemblokan element seperti eksternal Cascade Style Sheet (CSS) atau eksternal

JavaScript. Beberapa saat kemudian dilakukan penghalusan dengan semua sumber sudah diunduh kedalam sebuah perangkat. Frame yang ada digabungkan menjadi satu frame

22

tunggal dan memasukannya ke dalam browser. Fitur-fitur inilah yang meningkatkan kecepatan dan penggunaan browsing

internet melalui ponsel. d. Grafik yang teroptimasi

Didukung oleh library grafis 2D dan grafis 3D yang berdasarkan spesifikasi OpenGI ES 1.0 (akselerasi perangkat keras bersifat opsional).

e. Sqlite

Sqlite merupakan relational database management system yang kecil (sekitar 500kb) yang diintegrasikan pada sistem operasi android. Sqlite didasarkan pada function calls dan single file,

dimana semua defenisi, tabel, dan data disimpan.

f. Dukungan media untuk suara, video dan format gambar seperti

Moving Picture Experts Group 4 (MPEG4), MPEG-1 or

MPEG-2 Audio Layer 3 (MP3), Advanced Audio Coding

(ACC), Adaptive Multi-Rate (AMR) audio codec, Joint Photographic Expert Group (JPG), Portable Network Graphics

(PNG), Graphics Interchange Format (GIF).

g. GSM Telephony (bergantung dari perangkat keras yang

digunakan).

h. Bluetooth, Enhanced Data rates for GSM Evolution (EDGE), 3rd Generation (3G), dan WiFiTM (bergantung dari perangkat

23

i. Kamera, Global Postioning System (GPS), kompas dan accelerometer (bergantung dari perangkat keras yang digunakan).

j. Lingkungan pengembangan yang lengkap, seperti emulator, peralatan untuk debugging, memori dan performance profiling,

serta plug-in untuk Eclipse IDE. 2.7.4 Sistem Arsitektur Operasi Android

Berikut adalah gambar arsitektur dari sistem Android :

Gambar 2.1 Arsitektur Sistem Android (Safaat, 2011)

Menurut Safaat (2011), Setiap lapisan menggunakan layanan yang dihasilkan oleh lapisan dibawahnya. Berikut ini penjelasan dari setiap lapisan pada arsitektur Android dimulai dari lapisan paling bawah :

24

1. Linux Kernel

Android menggunakan sistem operasi Linux kernel. Linux kernel menangani berbagai layanan yang utama pada Android (termasuk

hardware drivers, manajemen proses dan memori, security, network,

power management, dan berbagai layanan sistem operasi lainnnya). 2. Libraries (Native Libraries)

Lapisan di atas Linux kernel adalah lapisan native libraries. Native libraries merupakan libraries yang ditulis dalam bahasa C / C++,

di-compile untuk arsitektur perangkat keras tertentu yang digunakan oleh telepon, dan di-install oleh phone vendor.

Beberapa contoh native libraries yang penting :

Surface Manager digunakan untuk mengatur akses pada subsistem

tampilan dan dengan mulus menggabungkan lapisan grafis 2D dan 3D dari beberapa aplikasi.

Graphics libraries mencakup SGL dan OpenGL untuk grafik 2D

dan 3D.

Media library digunakan untuk pemutaran dan perekaman media

audio dan video.

Sqlitedatabase engine untuk pengelolaan database.

 WebKit digunakan untuk web browser dan SSL untuk keamanan

25

3. Android Runtime

Android runtime adalah engine yang mendayai aplikasi dan bersama dengan libraries, membentuk dasar dari kerangka kerja aplikasi. Android runtime mencakup Dalvik virtual machine dan core libraries.

 Dalvik virtual machine

Dalvik adalah mesin virtual berbasis register yang telah dioptimalkan sehingga perangkat dapat menjalankan beberapa aplikasi secara efisien.

Core libraries

Core libraries pada Android menyediakan sebagian besar fungsi yang ada pada core Java libraries dan libraries khusus Android lainnya.

4. Application Framework

Application framework mencakup kelas-kelas yang digunakan untuk menciptakan aplikasi Android. Application framework ini membantu dalam pengaksesan perangkat keras dan mengelola sumber daya user interface dan aplikasi.

5. Application dan Widgets

Application atau aplikasi adalah program yang bisa mengambil alih seluruh layar dan berinteraksi dengan pengguna. Sementara, widgets

Dokumen terkait