Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Mobile Computing Fery Updi,M.Kom.
2
ANDROID
3
Sejarah Android OS Android Inc, adalah sebuah perusahaan software kecil yang didirikan pada bulan Oktober 2003 di Palo Alto, California, USA. Didirikan oleh beberapa senior di beberapa perusahaan yang berbasis IT & Communication; Andy Rubin, Rich Miner, Nick Sears dan Chris White. Konsep yang dimiliki Android Inc, ternyata menggugah minat raksasa Google untuk memilikinya. Pada bulan Agustus 2005, akhirnya Android Inc diakuisisi oleh Google Inc. Seluruh sahamnya dibeli oleh Google. Nilai pembelian Android Inc ini oleh google tidak ada release pastinya. Tetapi banyak yang memperkirakan nilai pembelian Android Inc oleh Google adalah sebesar USD 50 juta. Saat itu banyak yang berspekulasi, bahwa akuisisi ini adalah langkah awal yang dilakukan Google untuk masuk ke pasar mobile phone. Andy Rubin, Rich Miner, Nick Sears dan Chris White tetap di Android Inc yang dibeli Google, sehingga akhirnya mereka semua menjadi bagian dari raksasa Google dan sejarah android. Saat itulah mereka mulai menggunakan platfor linux untuk membuat sistem operasi bagi mobile phone.
4
Sejarah Android OS -2 Pada bulan nopember 2007, terbentuklan Open Handset Alliance yang merupakan konsorsium dari beberapa perusahaan : Broadcom Corporation, Google, HTC, Intel, LG, Marvell Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel, T-Mobile dan Texas Instruments. Mereka sepakat untuk membuat open standart bagi mobile phone. Pada hari yang sama, mereka mengumumkan produk pertama mereka, yaitu Android yang berbasis Linux kernel versi 2.6. Bulan Desember 2008, bergabunglah 14 perusahaan lainnya yaitu : ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd, PacketVideo, Softbank, Sony Ericsson, Toshiba Corp dan Vodafone Group Plc. Hal ini merupakan langkah besar dalam sejarah Android untuk menjadi pemimpin dalam sistem operasi untuk mobile phone.
5
Versi Android OS Android Cupcake 1.5 Android Donut 1.6 Android Eclair 2.0.x/2.1.x Android Froyo 2.2.x Android Gingerbread 2.3 Android Gingerbread Android Honeycomb 3.0 Android Ice Cream Sandwitch 4.0 Android Jelly Bean 4.2
6
Fitur Android OS Kerangka aplikasi (Framework) : itu memungkinkan penggunaan dan penghapusan komponen yang tersedia. Dalvik virtual machine: mesin virtual dioptimalkan untuk perangkat telepon seluler. Grafik: grafik di 2D dan grafis 3D berdasarkan pustaka OpenGL. SQLite: untuk penyimpanan data. Mendukung media: audio, video, dan berbagai format gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) GSM, Bluetooth, EDGE, 3G, 4G dan WiFi (tergantung piranti keras) Kamera, Global Positioning System (GPS), kompas, NFC dan accelerometer (tergantung piranti keras)
7
Fakta tentang Android OS Mobile paling banyak di dunia.
Setiap hari ada sekitar lebih dari 1 juta handphone berbasis Android di luncurkan Ada sekitar 1.5 Aplikasi setiap bulan diluncurkan di google play Android berbasis Linux (Kernal Linux) Open Source Framework berbasis bahasa Java
8
Arsitektur Android
9
Linux Kernel Tumpukan paling bawah pada arsitektur Android ini adalah kernel. Google menggunakan kernel Linux versi 2.6 untuk membangun sistem Android, yang mencakup memory management, security setting, power management, dan beberapa driver hardware. Kernel berperan sebaagai abstraction layer antara hardware dan keseluruhan software. Sebagai contoh, HTC GI dilengkapi dengan kamera. Kernel Android terdapat driver kamera yang memungkinkan pengguna mengirimkan perintah kepada hardware kamera. Android dibangun di atas kernel Linux 2.6. Namun secara keseluruhan android bukanlah linux, karena dalam android tidak terdapat paket standar yang dimiliki oleh linux lainnya. Linux merupakan sistem operasi terbuka yang handal dalam manajemen memori dan proses. Oleh karenanya pada android hanya terdapat beberapa servis yang diperlukan seperti keamanan, manajemen memori, manajemen proses, jaringan dan driver. Kernel linux menyediakan driver layar, kamera, keypad, WiFi, Flash Memory, audio, dan IPC (Interprocess Communication) untuk mengatur aplikasi dan lubang keamanan.
10
2. Android Run Time Lapisan setelah Kernel Linux adalah Android Runtime. Android Runtime ini berisi Core Libraries dan Dalvik Virtual Machine. Core Libraries mencakup serangkaian inti library Java, artinya Android menyertakan satu set library-library dasar yang menyediakan sebagian besar fungsi-fungsi yang ada pada library-library dasar bahasa pemrograman Java. Dalvik adalah Java Virtual Machine yang memberi kekuatan pada sistem Android. Dalvik VM ini di optimalkan untuk telepon seluler. Setiap aplikasi yang berjalan pada Android berjalan pada processnya sendiri, dengan instance dari Dalvik Virtual Machine. Dalvik telah dibuat sehingga sebuah piranti yang memakainya dapat menjalankan multi Virtual Machine dengan efisien. Dalvik VM dapat mengeksekusi file dengan format Dalvik Executable (.dex) yang telah dioptimasi untuk menggunakan minimal memory footprint. Virtual Machine ini register-based, dan menjalankan class-class yang dicompile menggunakan compiler Java yang kemudian ditransformasi menjadi format .dex menggunakan “dx” tool yang telah disertakan. Dalvik Virtual Machine (VM) menggunakan kernel Linux untuk menjalankan fungsi-fungsi seperti threading dan low-level memory management.
11
3. Libraries Bertempat di level yang sama dengan Android Runtime adalah Libraries. Android menyertakan satu set library-library dalam bahasa C/C++ yang digunakan oleh berbagai komponen yang ada pada sistem Android. Kemampuan ini dapat diakses oleh programmer melewati Android application framework. Sebagai contoh Android mendukung pemutaran format audio, video, dan gambar. Berikut ini beberapa core library tersebut : System C library, diturunkan dari implementasi standard C system library (libc) milik BSD, dioptimasi untuk piranti embedded berbasis Linux. Media Libraries, berdasarkan PacketVideo’s OpenCORE; library-library ini mendukun playback dan recording dari berbadai format audio and video populer, meliputi MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG. Surface Manager, mengatur akses pada display dan lapisan composites 2D and 3D graphic dari berbagai aplikasi. LibWebCore, web browser engine modern yang mensupport Android browser maupun embeddable web view.
12
SGL, the underlying 2D graphics engine.
3D libraries, implementasi berdasarkan OpenGL ES 1.0 APIs; library ini menggunakan hardware 3D acceleration dan highly optimized 3D software rasterizer FreeType, bitmap dan vector font rendering SQLit, relational database engine yang powerful dan ringan tersedia untuk semua aplikasi. Library-library tersebut bukanlah aplikasi yang berjalan sendiri, namun hanya dapat digunakan oleh program yang berada di level atasnya. Sejak versi Android 1.5, pengembang dapat membuat dan menggunakan pustaka sendiri menggunakan Native Development Toolkit (NDK).
13
4. Applications Framework
Lapisan selanjutnya adalah application framework, yang 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. Para pengembang aplikasi memiliki aplikasi penuh kepada tool-tool dasar tersebut, dan memanfaatkannya untuk menciptakan aplikasi yang lebih kompleks. 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.
14
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 common navigation backstack.
15
5. Applications Di lapisan teratas bercokol aplikasi itu sendiri. Di lapisan inilah anda menemukan fungsi-fungsi dasar smartphone seperti menelepon dan mengirim pesan singkat, menjalankan web browser, mengakses daftar kontak, dan lain-lain. Bagi rata-rata pengguna, lapisan inilah yang paling sering mereka akses. Mereka mengakses fungsi-fungsi dasar tersebut melalui user interface.
16
Siklus Hidup Aplikasi Android
Siklus hidup aplikasi android dikelola oleh sistem, berdasarkan kebutuhan pengguna, sumberdaya yang tersedia, dan sebagainya. Misalnya Pengguna ingin menjalankan browser web, pada akhirnya sistem yang akan menentukan menjalankan aplikasi. Sistem sangat berperan dalam menentukan apakah aplikasi dijalankan, dihentikan sementara, atau dihentikan sama sekali. Jika pengguna ketika itu sedang menjalankan sebuah Activity, maka sistem akan memberikan perioritas utama untuk aplikasi yang tersebut. Sebaliknya, jika suatu Activity tidak terlihat dan sistem membutuhkan sumber daya yang lebih, maka Activity yang prioritas rendah akan ditutup. [Sayed . Y. Hashimi and Satya Komatineni, Pro Android, Apress, USA 2009] Android menjalankan setiap aplikasi dalam proses secara terpisah, yang masing-masing memliki mesin virtual pengolah sendiri, dengan ini melindungi penggunaan memori pada aplikasi. Selain itu juga android dapat mengontrol aplikasi mana yang layak menjadi prioritas utama. Karenanya android sangat sensitive dengan siklus hidup aplikasi dan komponen-komponennya. Perlu adanya penanganan terhadap setiap kondisi agar aplikasi menjadi stabil. Gambar prioritas dari aplikasi
18
Berikut ini adalah deskripsi dari method override dari class Activity untuk daur hidup activity
onCreate() method ini dipanggil saat activity pertama kali dibuat. Di sinilah inisialisasi dilakukan – membuat UI, mendapatkan data yang diperlukan, dan lainnya. onStart() method ini dipanggil sesaat sebelum activity ditampilkan ke pengguna. onResume() method ini dipanggil ketika activity berinteraksi dengan pengguna. onPause() method ini berjalan ketika activity berada di balik layar (background), tidak terlihat oleh pengguna tapi masih berjalan. Biasanya hal ini terjadi saat ada activity lainnya yang dijalankan. Di state inilah seharusnya data program kita disimpan ke persistent state. onStop() method ini berjalan ketika activity sudah tidak terlihat lagi oleh pengguna dalam waktu yang cukup lama dan activity tidak diperlukan untuk sementara waktu. onRestart() jika method ini dipanggil, berarti activity sedang ditampilkan ulang ke pengguna dari state berhenti (stop). onDestroy() method ini dipanggil sebelum activity dimusnahkan (hilang dari memori).
19
Tool untuk membangun Aplikasi Android
Komputer dengan Sistem Operasi Windows, Linux, Mac OSX Eclipse IDE atau Netbeans IDE (Aplikasi untuk coding dengan fitur autocomplete, error checking, inline help, dll) ADT Plugin (Android Device Toolkit Plugin, adalah sebuah plugin, supaya IDE kita bisa men-develop .apk) Android SDK (Framework atau Pustaka berisi Librari siap pakai)
20
Langkah-langkah persiapan untuk membangun Aplikasi berbasis Android
Download Android SDK di Jika yang didownload berupa file archive (zip atau tgz), ekstrak archive tersebut ke folder manapun. Download JDK, karena kita menggunakan Java untuk membuat aplikasi Android. Download Eclipse dan pastikan sudah terinstal dengan baik. Install ADT Plugin dengan mengikuti cara instalasinya. Download komponen SDK yang sesuai dengan versi Android dari aplikasi yang akan dibuat. Dari Eclipse: masuk ke Window > Android SDK and AVD Manager Dari Windows: buka file SDK Manager.exe yang ada di folder Android SDK Dari Mac atau Linux: buka Terminal dan masuk ke folder tools/, kemudian jalankan perintah: android
21
Q & A
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.