12/23/2010

Android : Arsitekrur Android




Secara garis besar Arsitektur Android dapat dijelaskan dan digambarkan sebagai berikut:
• Applications dan Widgets
Applications dan Widgets ini adalah layer dimana berhubungan dengan aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan instlasi dan jalankan aplikasi tersebut, di layer inilah terdapat seperti aplikasi inti termasuk klien email, program SMS, kalender, peta, browser, kontak, dan lain-lain. All applications are written using the Java programming language. Semua aplikasi ditulis menggunakan bahasa pemrograman Java.
• Applications Frameworks
Android adalah “open development platform” yaitu Android menawarkan kepada pengembang atau memberi kemampuan kepada pengembang untuk membangun aplikasi yang bagus dan inovatif . Pengembang bebas untuk mengakses perangkat keras, akses informasi lokasi, menjalankan background service, mengatur alarm, dan menambahkan tambahkan seperti notificatios status, dan masih banyak lagi. Pengembang memiliki akses penuh menuju API framework yang seperti yang dilakukan oleh Aplikasi inti. Arsitektur aplikasi ini dirancang dengan mudah kita dapat menggunakan komponen yang sudah digunakan (reuse).
Sehingga kita bisa menyimpulkan Applications Frameworks ini adalah layar dimana para pembuat aplikasi melakukan pengembangan/pembuatan aplikasi yang akan dijalankan di sistem android, karena pada layar inilah aplikasi dapat dirancang, seperti contont-providers yang berupa sms dan lain sebagainya.
Komponen-komponen yang termasuk didalam Applications Frameworks adalah sebagai berikut :
a) Views
b) Content Provider
c) Resouce Manager
d) Notification Manager
e) Activity Manager
• Libraries
Libraries ini adalah layar dimana feature-feature android berada, biasanya para pembuat aplikasi kebanyakan mengakses libraries untuk menjalankan aplikasinya. Berjalan di atas kernel, Layaer ini meliputi berbagai librari C/C++ inti seperti sebagai libc dan SSL, serta:
❑ libraries media untuk pemutaran media audio dan video
❑ libraries untuk manajemen tampilan
❑ libraries Graphics mencakup SGL dan OpenGL untuk grafis 2D dan 3D
❑ libraries SQLite untuk dukungan database.
❑ libraries SSL dan WebKit terintegrasi dengan web browser dan security
• Android Run Time
Layar yang membuat aplikasi Android ketika dijalankan dimana dalam prosesnya menggunakan Implementasi Linux. Dalvik Virtual Machine (DVM) merupakan mesin yang membentuk dasar kerangka aplikasi Android. Didalam Android Run Time dibagi menjadi dua bagian yaitu
❑ Core Libraries : Android aplikasi dibangun dalam bahasa java, sementara Dalvik sebagai virtual mesinya bukan Virtual Machine Java, sehingga diperlukan sebuah libraries yang berfungsi untuk menterjemahkan bahasa java/c yang dihandle oleh core libraries.
❑ Dalvik Virtual Machine : Virtual mesin yang berbasis register yang dioptimalkan untuk menjalankan fungsi-fungsi secara efisien, dimana merupakan pengembangan yang mampu membuat linux kernel untuk thereading dan manajemen tingkat rendah.
• Linux Kernel
Linux kernel adalah layar dimana inti dari operating sistem dari Android itu sendiri, umumnya berisi file-file system yang mengatur sistem processing,memory,resource,drivers, dan sistem-sistem operating sistem android lainnya.


source : buku bagian 2 yang belum2 siap i tulis...

Android : OS Mobile Smartphone masa depan

Sejarah Android




Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware dan aplikas.Android menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. 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 peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.
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, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler.
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).
Pasa masa saat ini kebanyakan vendor-vendor smart phone sudah memproduksi smart phone berbasis android, vendor-vendor itu antara lain HTC, Motorola, Samsung, LG, HKC, Huawei, Archos, Webstation Camangi, Dell, Nexus, SciPhone, WayteQ, Sony Ericsson, LG, Acer, Nokia, Philips, T-Mobile,Nexian, IMO, Asus dan masih banyak lagi vendor smart phone didunia yang memproduksi android. Hal ini karena android itu adalah sistem operasi yang bebas didistribusikan dan dipakai oleh vendor manapun.
Pada Juli 2000, Google bekerjasama dengan Android Inc., perusahaan yang berada di Palo Alto, California Amerika Serikat. Para pendiri Android Inc. bekerja pada Google, di antaranya Andy Rubi, Rich Miner, Nick Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai perangkat lunak pada telepon seluler. Sejak saat itu muncul rumor bahwa Google hendak memasuki pasar telepon seluler. Di perusahaan Google, tim yang dipimpin Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google sedang bersiap menghadapi persaingan dalam pasar telepon seluler.
Sekitar September 2007 sebuah studi melaporkan bahwa Google mengajukan hak paten aplikasi telepon seluler (akhirnya Google mengenalkan Nexus One, salah satu jenis telepon pintar yang menggunakan Android pada sistem operasinya. Telepon seluler ini diproduksi oleh HTC Corporation dan tersedia di pasaran pada 5 Januari 2010).Pada 9 Desember 2008, diumumkan anggota baru yang bergabung dalam program kerja Android ARM Holdings, Atheros Communications, diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, dan Vodafone Group Plc. Seiring pembentukan Open Handset Alliance, OHA mengumumkan produk perdana mereka, Android, perangkat mobile yang merupakan modifikasi kernel Linux 2.6. Sejak Android dirilis telah dilakukan berbagai pembaruan berupa perbaikan bug dan penambahan fitur baru.


Android: Platform Masa Depan

Android dipuji sebagai "platform mobile pertama yang Lengkap, Terbuka , dan Bebas”.
• Lengkap (Complete Platform): Para desainer dapat melakukan pendekatan yang komprehensif ketika mereka sedang mengembangkan platform Android. Android merupakan sistem operasi yang aman dan banyak menyediakan tools dalam membangun software dan memungkinkan untuk peluang pengembangan aplikasi .
• Buka (Open Source Platform): Platform Android disediakan melalui lisensi open source.
Pengembang dapat dengan bebas untuk mengembangkan aplikasi.
• Free (Free Platform) : Android adalah platform/aplikasi yang bebas untuk develop.Tidak ada lisensi atau biaya royalti untuk devolop pada platform android. Tidak ada biaya keanggotaan diperlukan.Tidak diperlukan biaya pengujian. Tidak ada kontrak yang diperlukan atau aplikasi sertifikas. Android dapat didistribusikan dan diperdagangkan dalam bentuk apapun.

Android merupakan generasi baru platform mobile, platform yang memberikan pengembang untuk melakukan pengembangan sesuai dengan yang diharapkannya.Sistem operasi yang mendasari Android dilisensikan di bawah GNU General Public Lisensi Versi 2 (GPLv2), yang sering dikenal dengan istilah "copyleft" lisensi di mana setiap perbaikan pihak ketiga harus terus jatuh di bawah terms. Android didistribusikan di bawah Lisensi Apache Software (ASL/Apache2),yang memungkinkan untuk distribusi kedua derivasi open source dan tertutup dari kode sumber. Komersial pengembang (produsen handset khususnya) dapat memilih untuk meningkatkan platform tanpa harus memberikan perbaikan mereka ke open source masyarakat. Sebaliknya, pengembang dapat keuntungan dari perangkat tambahan seperti perbaikan dan mendistribusikan ulang pekerjaan mereka di bawah lisensi apapun yang mereka inginkan.Pengembang aplikasi Android memiliki kemampuan untuk mendistribusikan aplikasi mereka di bawah skema lisensi apapun yang mereka inginkan.
Pengembang memiliki beberapa pilihan ketika membuat aplikasi yang berbasis android. Kebanyakan pengembang menggunakan Eclipse yang tersedia secara bebas untuk merancang dan mengembangkan aplikasi Android. Eclipse adalah IDE yang paling populer untuk pengembangan Android karena memiliki Android plug-in yang tersedia untuk memfasilitasi pengembangan Android. Selain sebenarnya Eclipse mendapat dukungan langsung dari google untuk menjadi IDE pengembangan aplikasi Android, ini terbukti dengan adanya penambahan plugins dari eclipse untuk bisa membuat project android dimana source software langsung dari situs resminya google. Tetapi hal diatas tidak menutup kemungkinan untuk menggunakan IDE yang lain sepert Netbeans untuk melakukan pengembangan android.
Aplikasi Android dapat dikembangkan pada sistem operasi berikut:
• Windows XP Vista/Seven.
• Mac OS X (Mac OS X 10.4.8 atau lebih baru.
• Linux.



The Dalvik Virtual Machine (DVM)


Salah satu elemen kunci dari Android adalah Dalvik Virtual Machine (DVM). Android berjalan didalam Dalvik Virtual Machine (DVM) bukan di Java Virtual Machine (JVM), sebenarnya banyak persamaannya dengan Java virtual machine (VM) seperti Java ME (Java Mobile Edition), tetapi Android menggunakan Virtual Machine sendiri yang menurut saya dikustomisasi dan dirancang untuk memastikan bahwa beberapa feature-feature berjalan lebih efisien pada perangkat mobile.
Dalvik Virtual Machine(DVM) adalah “register bases” sementara Java Virtual Machine (JVM) adalah “stack based”, DVM didesian dan ditulis oleh Dan Bornsten dan beberapa engineers Google lainnya. Jadi bisa kita katakan “Dalvik equals(Java) == False”.
The Dalvik Virtual Machine menggunakan kernel Linux untuk menangani fungsionalitas tingkat rendah termasuk keamanan, threading, dan proses serta manajemen memori. Ini memungkinkan kita untuk menulis Aplikasi C / C + sama halnya seperti pada OS Linux kebanyakan. Meskipun dalam kenyataanya kita harus banyak memahami Arsitektur dan proses sistem dari kernel linux yang digunakan dalam Android Tersebut.

Semua hardware yang berbasis Android dijalankan dengan Dengan menggunakan VM untuk eksekusi aplikasi, pengembang tidak perlu khawatir tentang implementasi perangkat keras tertentu. Dalvik Virtual Machine mengeksekusi executable fi les, sebuah format yang dioptimalkan untuk memastikan memori yang digunakan sangat kecil. The executable file diciptakan dengan mengubah kelas bahasa Java dikompilasi menggunakan tools yang disediakan dalam SDK.


Android SDK (Software Development Kit)

Android SDK adalah tools API (Application programming interface) yang diperlukan untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Android merupakan subset perangkat lunak untuk ponsel yang meliputi sistem operasi, middleware dan aplikasi kunci yang di release oleh Google. Saat ini disediakan Android SDK (software Development kit) sebagai alat bantu dan API untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Sebagai platform aplikasi-netral, Android memberi Anda kesempatan untuk membuat Aplikasi yang kita butuhkan yang bukan merupakan aplikasi bawaan Handphone/Smarthpone. Beberapa fitur-fitur Android yang paling penting adalah :
• Framework Aplikasi yang mendukung penggantian komponen dan reusable.
• Mesin virtual Dalvik dioptimalkan untuk perangkat mobile
• Integrated browser berdasarkan engine open source WebKit
• Grafis yang dioptimalkan dan didukung oleh perpustakaan grafis 2D, grafis 3D berdasarkan spesifikasi opengl ES 1,0 (Opsional akselerasi hardware)
• SQLite untuk penyimpanan data
• Media Support yang mendukung audio, video, dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)GSM Telephony (tergantung hardware)
• Bluetooth, EDGE, 3G, dan WiFi (tergantung hardware)
• Kamera, GPS, kompas, dan accelerometer (hardware tergantung)
• Lingkungan Development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk Eclipse IDE
Untuk source SDK Android ini dapat dilihat dan didownload langsung di situs resmi pengembang SDK Android di http://www.developer.android.com atau SDK Android juga terdapat dalam DVD yang di includekan dalam buku ini baik versi windows maupun versi linux, karena SDK Android itu adalah free dan bebas didistribusikan.


Android OS

Sebagaimana yang telah disebutkan diatas, android adalah operating sistem yang berbasis linux atau open source. Selain Android SDK untuk pengembangan aplikasi, android juga tersedia bebas dalam bentuk operating sistem, hal ini sebenarnya yang menyebabkan vendor-vendor smartphone berlomba-lomba untuk memproduksi smartphone berbasis android, Android OS dapat di download dari situs resmi google di alamat situs http://www.code.google.com. Sebenarnya ini peluang besar bagi indonesia untuk memproduksi smartphone, bisa jadi bentuk kerjasama


source : bab hello android dari buku android yang sedang i susun en blum rampung2,,,he.he.he.