Jumat, 26 April 2013

Android



Android  adalah  sistem operasi  untuk  telepon seluler  yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri dan digunakan oleh bermacam perangkat mobile. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan hardware, software, dan telekomunikasi, termasuk Google,  HTC,  Intel,  Motorola, Qualcomm, T-Mobile, dan Nvidia.

Gambar  Android
Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache.
Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD).

Fitur Android
Android memiliki beberapa fitur yang menarik sebagai media untuk membuat sistem ooperasi ini menjadi lebih maju disbanding lainnya. Di bawah ini adalah fitur yang terdapat pada android :

  1. Application Framewok yang memungkinkan penggunaan dan penghapusan komponen yang tersedia.
  2. Dalvik Virtual Machine, yaitu mesin virtual yang dioptimalkan untuk perangkat mobile.
  3. Integrated browser based, adalah sebuah browser terintegrasi dari android.
  4. Graphic Library, yang mendukung grafik 2D dan 3D berdasarkan OpenGL Library.
  5. SQLite, adalah fitur yang terdapat pada android yang digunakan untuk membuat database.
  6. Media Supported, yang mendukung beberapa media seperti : audio, video, dan berbagai format gambar( GIF, PNG, BMP, JPG).
  7. Hardware Independent, mendukung GSM, Bluetooth, EDGE, 3G, Wifi, kamera, Global Positioning System (GPS), kompas, dan accelerometer.
  8. Rich Development Environment mencakup perangkat emulator, tools untuk debug, memory dan performance profiling serta plugin untuk Eclipse IDE.

  
Perkembangan Aplikasi Android
Pada mulanya terdapat berbagai macam sistem operasi pada perangkat selular, diantaranya sistem operasi Symbian, Microsoft Windsos Mobile, Mobile Linux, iPhone, dan sistem operasi lainnya. Namun diantara sistem operasi yang ada belum mendukung standar dan penerbitan API yang dapat dimanfaatkan secara keseluruhan dan dengan biaya yang murah. Kemudian Google ikut berkecimpung didalamnya dengan platform Android, yang menjanjikan keterbukaan, keterjangkauan, open source, dan framework berkualitas.
Pada tahun 2005, Google mengakuisisi perusahaan Android Inc. untuk memulai pengembangan platform Android. Dimana terlibat dalam pengembangan ini Andy Rubin, Rich Miner, Nick Sears, dan Chris White. Pada pertengahan 2007 sekelompok pemimpin industry bersama-sama membentuk aliansi perangkat selular terbuka, Open Handset Alliance (OHA). Bagian dari tujuan aliansi ini adalah berinovasi dengan cepat dan menanggapi kebutuhan konsumen dengan lebih baik, dengan produk awalnya adalah platform Android. Dimana Android dirancang untuk melayani kebutuhan operator telekomunikasi, manufaktur handset, dan pengembang aplikasi. OHA berkomitmen untuk membuat Android open source dengan lisensi Apache versi 2.0.
         Android pertama kali diluncurkan pada 5 November 2007, dan smartphone pertama yang menggunakan sistem operasi Android dikeluarkan oleh T-Mobile dengan sebutan G1 pada bulan September 2008. Hingga saat ini Android telah merilis beberapa versi Android untuk menyempurnakan versi sebelumnya. Selain berdasarkan penomoran, pada setiap versi Android terdapat kode nama berdasarkan nama-nama kue. Hingga saat ini sudah terdapat beberapa versi yang telah diluncurkan, diantaranya:
Tabel 2.2 Versi Android
Versi
Penjelasan
Versi 1.1
Rilis 9 Maret 2009, dilengkapi pembaruan estetis pada aplikasi, jam alarm, voice search, pengiriman pesan dengan Gmail, dan pemberitahuan email.
Versi 1.5
Rilis pertengahan Mei 2009, dilengkapi kemampuan merekan dan menonton video dengan modus kamera, mengunggah video ke YouTube dan gambar ke Picasa, dukungan Bluetooth A2DP, animasi layar, serta keyboard pada layar dapat disesuaikan dengan sistem.
Versi 1.6
Rilis September 2009, dilengkapi proses pencarian lebih baik, baterai indicator dan control applet VPN, galeri foto, Text-to-speech engine, kemampuan dial kontak, teknologi text to change speech, VPN, gesture, CDMA/EVDO, 802.1x, dan integrasi kamera, camcorder, dan galeri.
Versi 2.0/2.1
Rilis 3 Desember 2009, pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan User Interface dengan browser baru dan dukungan HTML5, dukungan flash untuk kamera 3,2 MP, digital zoom, Bluetooth 2.1.
Versi 2.2
Rilis 20 Mei 2010, dilengkapi dukungan Adobe Flash 10.1, kecepatan kinerja, integrasi V8 javascript engine I yang dipakai Google Chrome, pemasangan aplikasi dalam SD card, kemampuan WiFi hotspot portable, dan auto update dalam aplikasi Android Market.
Versi 2.3
Rilis 6 Desember 2010, dilengkapi peningkatan kemampuan gaming, fungsi copy-paste, efek audio baru (reverbm equalization, headphone virtualization, dan bass boost), kemampuan Near Field Communication (NFC), dan jumlah kamera lebih dari satu.
Versi 3.0
Versi ini dirancang untuk tablet, mendukung layar yang lebih besar dan User Interface yang didesain untuk tablet, multi prosesor, dan akselarasi hardware untuk grafis.
Versi 4.0
Diumumkan pada 19 Oktober 2011, membawa fitur HoneyComb untuk smartphone dan menambahkan fitur baru termasuk membuka kunci dengan pengenalan wajah, jaringan data pemantauan penggunaan dan control, terpadu kontak jaringan social, perangkat tambahan fotografi, mencari email secara offline, dan berbagi informasi dengan NFC.


Arsitektur Android
            Di dalam sistem operasi android memilik 4 lapisan (layer) yang merupakan komponen dari suatu sistem android. Seperti yang yang tampak pada gambar 2.3 di bawah ini, Berikut penjelasan masing-masing komponenya yang penting untuk di ketahui :

Gambar Arsitektur Sistem Operasi Android


Linux Kernel
            Lapisan yang berada pada lapisan paling bawah adalah kernel. Google membangun sistem operasi android menggunakan kernel linux 2.6. kernel linux ini mencakup manajemen memori, pengaturan keamanan, manajemen ketersediaan tenaga, dan beberapa driver hardware. Layer kernel menjadi layer abstraksi yang menjadi penghubung antara hardware dan software. Android bukan linux, android hanya berjalan di atas kernel linux 2.6. linux merupakan sistem operasi terbuka yang ahli dalam hal manajemen memori dan manajemen proses. android hanya menyediakan keamanan, manajemen memori, manajemen proses, jaringan dan driver. Linux menyediakan driver layar, kamera, keypad, wifi, flash memory, audio, dan IPC.

Android Run Time
            Android runtime berisi core libraries dan dalvik virtual machine. Core libraries berisi seluruh inti library Java. Android menempatkan sebagian besar fungsi-fungsi yang ada pada library dasar bahasa pemrograman java di dalam librarynya. Dalvik adalah java virtual machine yang berguna untuk optimalisasi sistem android pada telepon selular. dalvik dibuat agar device yang digunakan dapat menjalankan multi virtual machine. Virtual machine ini akan mengeksekusi file dengan format dalvik executable (.dex) yang telah dioptimasi untuk menggunakan minimal memory footprint. virtual machine ini akan menjalankan class-class yang dicompile menggunakan compiler java yang selanjutnya akan diubah formatnya menjadi format .dex. Dalvik virtual machine menggunakan kernel linux untuk menjalankan fungsi-fungsi seperti threading dan low-level memory management.
 
Libraries
Android menyediakan satu set library-library dalam bahasa C/C++ yang dapat digunakan oleh berbagai komponen yang ada pada sistem android. Library ini dapat diakses oleh programmer melalui android application framework. Beberapa library-library pada android diantaranya:

  • System C Library, Didapatkan dari turunan implementasi library standar C (libc) milik BSD, dioptimasi untuk device embedded berbasis linux.
  • Media Libraries, Library ini mendukung playback dan recording dari berbagai format audio dan video populer, seperti MP3, ACC, JPG, MPEG4, H.264, AMR, dan PNG.
  • Surface Manager, Mengatur akses pada dispaly dan lapisan composites 2D dan 3D graphic dari berbagai aplikasi.
  • Libwebcore, Web browser engine yang mensupport android browser maupun embeddable web view.
  •  SGL, Engine Grafik 2D yang dasar.
  •  3D libraries, Library ini menggunakan hardware akselerasi 3D dan highly optimized 3D software rasterizer.
  • Free Type, Bitmap dan vector font rendering.
  • SQLite, Engine database relasional yang ringan namun powerful untuk semua aplikasi. Library ini bukan merupakan aplikasi yang dapat berjalan sendiri. Library dapat digunakan oleh program yang ada di level atasnya. namun sejak versi 1.5, programmer dan developer bisa menggunakan library sendiri menggunakan Native Development Toolkit (NDK).

Applications Framework
            Lapisan application framework mencakup program untuk mengatur fungsi-fungsi dasar smartphone. Application Framework merupakan serangkaian tool dasar seperti alokasi resource smartphone, aplikasi telepon, pergantian antar – proses atau program, dan pelacakan lokasi fisik telepon. Programmer mendapatkan akses penuh untuk memanfaatkan API-API (Android Protocol Interface) yang juga digunakan core applications. Arsitektur aplikasi didesain untuk menyederhanakan pemakaian kembali komponen-komponen, setiap aplikasi dapat menunjukkan kemampuannya dan aplikasi lain dapat memakai kemampuan tersebut. Mekanisme yang sama memungkinkan pengguna mengganti komponen-komponen yang dikehendaki. Di dalam semua aplikasi terdapat servis dan sistem yang meliputi :
  • Satu set Views yang dapat digunakan untuk membangun aplikasi meliputi lists, grids, text boxes, buttons, dan embeddable web browser.
  • Content Providers yang memungkinkan aplikasi untuk mengakses data dari aplikasi lain   (misalnya Contacts), atau untuk membagi data yang dimilikinya.
  • Resource Manager, menyediakan akses ke non-code resources misalnya localized strings, graphics, dan layout files.
  • Notification Manager yang memungkinkan semua aplikasi untuk menampilkan custom alerts pada the status bar.
  • Activity Manager yang memanage life cycle of dari aplikasi dan menyediakan.   

Applications

            Berada di tingkatan paling atas. Di lapisan ini dapat ditemukan fungsi-fungsi dasar smartphone seperti menelepon dan mengirim pesan singkat, menjalankan web browser, mengakses daftar kontak, dan lain-lain. layer ini merupakan layer yang paling sering diakses oleh pengguna melalui user interface.

Kelebihan Android
Sudah banyak platform untuk perangkat selular saat ini, termasuk didalamnya Symbian, iPhone, Windows Mobile, BlackBerry, Java Mobile Edition, Linux Mobile (LiM0), dan banyak lagi. Namun ada beberapa hal yang menjadi kelebihan Android. Walaupun beberapa fitur-fitur yang ada telah muncul sebelumnya pada platform lain, Android adalah yang pertama menggabungkan hal seperti berikut:
1. Keterbukaan, Bebas pengembangan tanpa dikenakan biaya terhadap sistem karena berbasiskan Linux dan open source. Pembuat perangkat menyukai hal ini karena dapat membangun platform yang sesuai yang diinginkan tanpa harus membayar royality. Sementara pengembang software menyukai karena Android dapat digunakan diperangkat manapun dan tanpa terikat oleh vendor manapun.
2.  Arsitektur komponen dasar Android terinspirasi dari teknologi internet Mashup. Bagian dalam sebuah aplikasi dapat digunakan oleh aplikasi lainnya, bahkan dapat diganti dengan komponen lain yang sesuai dengan aplikasi yang dikembangkan.
3. Banyak dukungan service, kemudahan dalam menggunakan berbagai macam layanan pada aplikasi seperti penggunaan layanan pencarian lokasi, database SQL, browser dan penggunaan peta. Semua itu sudah tertanam pada Android sehingga memudahkan dalam pengembangan aplikasi.
4.  Siklus hidup aplikasi diatur secara otomatis, setiap program terjaga antara satu sama lain oleh berbagai lapisan keamanan, sehingga kerja sistem menjadi lebih stabil. Pengguna tak perlu kawatir dalam menggunakan aplikasi pada perangkat yang memorinya terbatas.
5. Dukungan grafis dan suarat terbaik, dengan adanya dukungan 2D grafis dan animasi yang diilhami oleh Flash menyatu dalam 3D menggunakan OpenGL memungkinkan membuat aplikasi maupun game yang berbeda.
6. Portabilitas aplikasi, aplikasi dapat digunakan pada perangkat yang ada saat ini maupun yang akan datang. Semua program ditulis dengan menggunakan bahasa pemrograman Java dan dieksekusi oleh mesin virtual Dalvik, sehingga kode program portabel antara ARM, X86, dan arsitektur lainnya. Sama halnya dengan dukungan masukan seperti penggunaan keyboard, layar sentuh, trackball dan resolusi layar semua dapat disesuaikan dengan program.

Android SDK
            Android  SDK (Software Development Kit) mencakup tools pengembangan yang komprehensif. Android SDK terdiri dari debugger, libraries, handset emulator, dokumentasi, contoh kode program dan tutorial. Persyaratan mencakup JDK, Apache Ant dasn Phyton 2.2 atau lebih. IDE yang menggunakan plugin Android Development Tools (ADT), dengan ini pengembangan dapat menggunakan IDE untuk mengedit dokumen Java dan XML, serta menggunakan peralatan command line untuk menciptkan, membangun, melakukan debug aplikasi Android dan pengendalian perangkat Android (misalnya reboot, menginstal paket perangkat lunak).
            Aplikasi android di paketkan ke dalam format .apk dan disimpan di direktori data/app. Pengguna dapat menjalankan perintah adb root untuk mengakses direktori tersebut karena root memiliki izin untuk mengaksesnya.

Konfigurasi Android SDK
            Pada tahap awal konfigurasi Android SDK yaitu menginstallnya terlebih dahulu. Proses install Android SDK dimulai dengan mengunjungi alamat developer Android( developer.android.com/sdk/index.html). pilih fill yang sesuai dengan sistem operasi yang sedang dipakai (tersedia Windows).
            Setelah didownload, instalasi Android SDK dimulai. Sebelum install dimulai, pastikan untuk menginstall Java Development Kit terlebih dahulu, hal ini sesuai dengan spesifikasi yang dibutuhkan untuk menginstall Android. Proses Installasi Android SDK cukup sederhana, yaitu dengan mensetting direktori tujuan Android untuk diinstall.
            Setelah tahap install selesai, Android SDK telah siap digunakan. Namun untuk dapat membuat emulator Android perlu untuk mengkonfigurasi emulator tersebut. Pada saat masuk Android SDK, akan terlihat sebuah list Avaible packages di sebelah kiri.
            Ada beberapa packages yang diperlukan untuk kembali didownload. Pertama yaitu Android SDK Tools dan Android SDK Platform-tools. Kedua packages ini berfungsi sebagai  komponen dari Android. Komponen ini mempunyai peranan dalam membaca aplikasi yang dijalankan pada Android itu sendiri. SDK Platform Android memiliki banyak versi, namun versi yang sedang saya gunakan pada beberapa ponsel kali ini adalah versi 2.3.
            Setelah 3 komponen tersebut terinstall, maka masuk ke dalam tahap pembuatan Android Virtual Device (AVD), pada akhirnya AVD  inilah yang akan disebut dengan emulator pada Android. Pilih Virtual Device pada Android SDK, pilih New.
            Setelah itu konfigurasi nama dari AVD, hanya sebagai sebutan dari emulator yang akan dipakai nanti. Untuk target pilih Android 2.3 – API Level 10 ( sesuai dengan komponen yang telah di download sebelumnya). Untuk kolom lainnya dapat dikosongkan untuk menerapkan pengaturan default.
            Untuk menjalankan AVD, pilih start pada virtual devices Android SDK. Tunggu sejenak hingga proses pembukaan emulator selesai.

 
Gambar Tampilan Emulator Android


0 komentar:

Posting Komentar