1 / 21

7 Mobile Computing 2 SKS

7 Mobile Computing 2 SKS. Dedy Alamsyah , S.Kom . ANDROID. Sejarah Android OS.

nalani
Download Presentation

7 Mobile Computing 2 SKS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 7Mobile Computing2 SKS DedyAlamsyah, S.Kom.

  2. ANDROID

  3. Sejarah Android OS Android Inc, adalahsebuahperusahaan software kecil yang didirikanpadabulanOktober 2003 di Palo Alto, California, USA. Didirikanolehbeberapa senior di beberapaperusahaan yang berbasis IT & Communication; Andy Rubin, Rich Miner, Nick Sears dan Chris White. Konsep yang dimiliki Android Inc, ternyatamenggugahminatraksasa Google untukmemilikinya. PadabulanAgustus 2005, akhirnya Android Incdiakuisisioleh Google Inc. Seluruhsahamnyadibelioleh Google. Nilaipembelian Android Inciniolehgoogletidakada release pastinya. Tetapibanyak yang memperkirakannilaipembelian Android Incoleh Google adalahsebesar USD 50 juta. Saatitubanyak yang berspekulasi, bahwaakuisisiiniadalahlangkahawal yang dilakukan Google untukmasukkepasar mobile phone. Andy Rubin, Rich Miner, Nick Sears dan Chris White tetap di Android Inc yang dibeli Google, sehinggaakhirnyamerekasemuamenjadibagiandariraksasa Google dansejarah android. Saatitulahmerekamulaimenggunakanplatforlinuxuntukmembuatsistemoperasibagi mobile phone.

  4. Sejarah Android OS -2 • Padabulannopember 2007, terbentuklan Open Handset Alliance yang merupakankonsorsiumdaribeberapaperusahaan : Broadcom Corporation, Google, HTC, Intel, LG, Marvell Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel, T-Mobile dan Texas Instruments. Merekasepakatuntukmembuat open standartbagi mobile phone. Padahari yang sama, merekamengumumkanprodukpertamamereka, yaitu Android yang berbasis Linux kernel versi 2.6. • BulanDesember 2008, bergabunglah 14 perusahaanlainnyayaitu : ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd, PacketVideo, Softbank, Sony Ericsson, Toshiba Corp dan Vodafone Group Plc. Hal inimerupakanlangkahbesardalamsejarah Androiduntukmenjadipemimpindalamsistemoperasiuntuk mobile phone.

  5. Versi Android OS Android Cupcake 1.5Android Donut 1.6Android Eclair 2.0.x/2.1.xAndroid Froyo 2.2.xAndroid Gingerbread 2.3Android Gingerbread 2.3.3Android Honeycomb 3.0 Android Ice Cream Sandwitch 4.0 Android Jelly Bean 4.2

  6. Fitur Android OS • Kerangkaaplikasi (Framework) : itumemungkinkanpenggunaandanpenghapusankomponen yang tersedia. • Dalvikvirtual machine: mesin virtual dioptimalkanuntukperangkatteleponseluler. • Grafik: grafik di 2D dangrafis 3D berdasarkanpustaka OpenGL. • SQLite: untukpenyimpanan data. • Mendukung media: audio, video, danberbagai format gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) • GSM, Bluetooth, EDGE, 3G, 4G danWiFi (tergantungpirantikeras) • Kamera, Global Positioning System (GPS), kompas, NFC danaccelerometer (tergantungpirantikeras)

  7. Faktatentang Android • OS Mobile paling banyak di dunia. • Setiaphariadasekitarlebihdari 1 jutahandphoneberbasis Android di luncurkan • Ada sekitar 1.5 Aplikasisetiapbulandiluncurkan di google play • Android berbasis Linux (Kernal Linux) • Open Source • Framework berbasisbahasa Java

  8. Arsitektur Android

  9. Linux Kernel Tumpukan paling bawahpadaarsitektur Android iniadalah kernel. Google menggunakan kernel Linux versi 2.6 untukmembangunsistem Android, yang mencakup memory management, security setting, power management, danbeberapa driver hardware. Kernel berperansebaagai abstraction layer antara hardware dankeseluruhan software. Sebagaicontoh, HTC GI dilengkapidengankamera. Kernel Android terdapat driver kamera yang memungkinkanpenggunamengirimkanperintahkepada hardware kamera. Android dibangun di atas kernel Linux 2.6. Namunsecarakeseluruhan android bukanlahlinux, karenadalam android tidakterdapatpaketstandar yang dimilikiolehlinuxlainnya. Linux merupakansistemoperasiterbuka yang handaldalammanajemenmemoridan proses. Olehkarenanyapada android hanyaterdapatbeberapaservis yang diperlukansepertikeamanan, manajemenmemori, manajemen proses, jaringandan driver. Kernel linuxmenyediakan driver layar, kamera, keypad, WiFi, Flash Memory, audio, dan IPC (Interprocess Communication) untukmengaturaplikasidanlubangkeamanan.

  10. 2. Android Run Time Lapisansetelah Kernel Linux adalah Android Runtime. Android Runtime iniberisiCore Libraries danDalvik Virtual Machine.  Core Librariesmencakupserangkaianinti library Java, artinya Android menyertakansatu set library-library dasar yang menyediakansebagianbesarfungsi-fungsi yang adapada library-library dasarbahasapemrograman Java. Dalvikadalah Java Virtual Machine yang memberikekuatanpadasistem Android. Dalvik VM ini di optimalkanuntukteleponseluler. Setiapaplikasi yang berjalanpada Android berjalanpadaprocessnyasendiri, dengan instance dariDalvik Virtual Machine. Dalviktelahdibuatsehinggasebuahpiranti yang memakainyadapatmenjalankan multi Virtual Machine denganefisien. Dalvik VM dapatmengeksekusi file dengan format Dalvik Executable (.dex) yang telahdioptimasiuntukmenggunakan minimal memory footprint. Virtual Machine ini register-based, danmenjalankan class-class yang dicompilemenggunakan compiler Java yang kemudianditransformasimenjadi format .dexmenggunakan “dx” tool yang telahdisertakan. Dalvik Virtual Machine (VM) menggunakan kernel Linux untukmenjalankanfungsi-fungsiseperti threading dan low-level memory management.

  11. 3. Libraries Bertempat di level yang samadengan Android Runtime adalah Libraries. Android menyertakansatu set library-library dalambahasa C/C++ yang digunakanolehberbagaikomponen yang adapadasistem Android. Kemampuaninidapatdiaksesoleh programmer melewati Android application framework. Sebagaicontoh Android mendukungpemutaran format audio, video, dangambar. Berikutinibeberapa core library tersebut : System C library, diturunkandariimplementasi standard C system library (libc) milik BSD, dioptimasiuntukpiranti embedded berbasis Linux. Media Libraries, berdasarkanPacketVideo’sOpenCORE; library-library inimendukun playback dan recording dariberbadai format audio and video populer, meliputi MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG. Surface Manager, mengaturaksespada display danlapisan composites 2D and 3D graphic dariberbagaiaplikasi. LibWebCore, web browser engine modern yang mensupport Android browser maupun embeddable web view.

  12. SGL, the underlying 2D graphics engine. 3D libraries, implementasiberdasarkan OpenGL ES 1.0 APIs; library inimenggunakan hardware 3D acceleration dan highly optimized 3D software rasterizer FreeType, bitmap dan vector font rendering SQLit, relational database engine yang powerful danringantersediauntuksemuaaplikasi. Library-library tersebutbukanlahaplikasi yang berjalansendiri, namunhanyadapatdigunakanoleh program yang berada di level atasnya. Sejakversi Android 1.5, pengembangdapatmembuatdanmenggunakanpustakasendirimenggunakan Native Development Toolkit (NDK).

  13. 4. Applications Framework Lapisanselanjutnyaadalah application framework, yang mencakup program untukmengaturfungsi-fungsidasar smartphone. Application Framework merupakanserangkaian tool dasarsepertialokasi resource smartphone, aplikasitelepon, pergantianantar – proses atau program, danpelacakanlokasifisiktelepon. Para pengembangaplikasimemilikiaplikasipenuhkepada tool-tool dasartersebut, danmemanfaatkannyauntukmenciptakanaplikasi yang lebihkompleks. Programmer mendapatkanaksespenuhuntukmemanfaatkan API-API (Android Protocol Interface) yang jugadigunakan core applications. Arsitekturaplikasididesainuntukmenyederhanakanpemakaiankembalikomponen-komponen, setiapaplikasidapatmenunjukkankemampuannyadanaplikasi lain dapatmemakaikemampuantersebut.

  14. Mekanisme yang samamemungkinkanpenggunamenggantikomponen-komponen yang dikehendaki. Di dalamsemuaaplikasiterdapatservisdansistem yang meliputi : Satu set Views yang dapatdigunakanuntukmembangunaplikasimeliputi lists, grids, text boxes, buttons, dan embeddable web browser.  Content Providers yang memungkinkanaplikasiuntukmengakses data dariaplikasi lain (misalnya Contacts), atauuntukmembagi data yang dimilikinya. Resource Manager, menyediakanakseske non-code resources misalnya localized strings, graphics, dan layout files. Notification Manager yang memungkinkansemuaaplikasiuntukmenampilkan custom alerts pada the status bar. Activity Manager yang memanage life cycle of dariaplikasidanmenyediakan common navigation backstack.

  15. 5. Applications Di lapisanteratasbercokolaplikasiitusendiri. Di lapisaninilahandamenemukanfungsi-fungsidasar smartphone sepertimenelepondanmengirimpesansingkat, menjalankan web browser, mengaksesdaftarkontak, dan lain-lain. Bagi rata-rata pengguna, lapisaninilah yang paling seringmerekaakses. Merekamengaksesfungsi-fungsidasartersebutmelalui user interface.

  16. SiklusHidupAplikasiAndroid Siklushidupaplikasi android dikelolaolehsistem, berdasarkankebutuhanpengguna, sumberdaya yang tersedia, dansebagainya. MisalnyaPenggunainginmenjalankan browser web, padaakhirnyasistem yang akanmenentukanmenjalankanaplikasi. Sistemsangatberperandalammenentukanapakahaplikasidijalankan, dihentikansementara, ataudihentikansamasekali. Jikapenggunaketikaitusedangmenjalankansebuah Activity, makasistemakanmemberikanperioritasutamauntukaplikasi yang tersebut. Sebaliknya, jikasuatu Activity tidakterlihatdansistemmembutuhkansumberdaya yang lebih, maka Activity yang prioritasrendahakanditutup. [Sayed . Y. Hashimi and SatyaKomatineni, Pro Android, Apress, USA 2009] Android menjalankansetiapaplikasidalam proses secaraterpisah, yang masing-masingmemlikimesin virtual pengolahsendiri, denganinimelindungipenggunaanmemoripadaaplikasi. Selainitujuga android dapatmengontrolaplikasimana yang layakmenjadiprioritasutama. Karenanya android sangat sensitive dengansiklushidupaplikasidankomponen-komponennya. Perluadanyapenangananterhadapsetiapkondisi agar aplikasimenjadistabil.Gambarprioritasdariaplikasi

  17. Berikutiniadalahdeskripsidari method override dari class Activity untukdaurhidupactivity onCreate()method inidipanggilsaat activity pertama kali dibuat. Di sinilahinisialisasidilakukan – membuat UI, mendapatkan data yang diperlukan, danlainnya. onStart()method inidipanggilsesaatsebelum activity ditampilkankepengguna. onResume()method inidipanggilketika activity berinteraksidenganpengguna. onPause()method iniberjalanketika activity berada di baliklayar (background), tidakterlihatolehpenggunatapimasihberjalan. Biasanyahaliniterjadisaatada activity lainnya yang dijalankan. Di state inilahseharusnya data program kitadisimpanke persistent state. onStop()method iniberjalanketika activity sudahtidakterlihatlagiolehpenggunadalamwaktu yang cukup lama dan activity tidakdiperlukanuntuksementarawaktu. onRestart()jika method inidipanggil, berarti activity sedangditampilkanulangkepenggunadari state berhenti (stop). onDestroy()method inidipanggilsebelum activity dimusnahkan (hilangdarimemori).

  18. Tool untukmembangunAplikasi Android • KomputerdenganSistemOperasi Windows, Linux, Mac OSX • Eclipse IDE atauNetbeans IDE (Aplikasiuntuk coding denganfitur autocomplete, error checking, inline help, dll) • ADT Plugin (Android Device Toolkit Plugin, adalahsebuah plugin, supaya IDE kitabisa men-develop .apk) • Android SDK (Framework atauPustakaberisiLibrarisiappakai)

  19. Langkah-langkahpersiapanuntukmembangunAplikasiberbasis Android • Download Android SDK di http://developer.android.com/sdk/index.html Jika yang didownloadberupa file archive (zip atautgz), ekstrak archive tersebutke folder manapun. • Download JDK, karenakitamenggunakan Java untukmembuataplikasi Android. • Download Eclipse danpastikansudahterinstaldenganbaik. • Install ADT Plugin denganmengikuticarainstalasinya. • Download komponen SDK yang sesuaidenganversi Android dariaplikasi yang akandibuat. • Dari Eclipse: masukkeWindow > Android SDK and AVD Manager • Dari Windows: buka file SDK Manager.exe yang ada di folder Android SDK • Dari Mac atau Linux: bukaTerminal danmasukke folder tools/, kemudianjalankanperintah: android

  20. Q & A

More Related