PAPB Kelas D 1.Rinda Wahyuni 115060801111055 2.Andhika Rizqi Eka 115060800111053 Apache Cordova PhoneGap adalah framework open source untuk membuat aplikasi pada berbagai macam platform seperti Android , Blackberry , Iphone atau Windows Phone menggunakan HTML5 , JQUERY , JQUERY MOBILE , DAN CSS3. Ketika akan membangun aplikasi untuk device yang berbeda seperti Android , Iphone , Windows Mobile dan lainnya kita membutuhkan ramework dan bahasa pemrograman yang berbeda. Seperti di Android menggunakan bahasa pemrograman Java , blackberry juga dengan Java, Iphone dengan Basic C , dan Windows Phone dengan C#. PhoneGap memberi solusi dengan menggunakan bahasa web-standart untuk membangun aplikasi smartphone. Dengan PhoneGap kita hanya melakukan sekali koding langsung bisa di compile kesemua platform sekaligus. Frame Work PhoneGap telah didownload lebih dari satu juta kali dan digunakan lebih dari 400,000 developer. Ribuan aplikasi dibangun menggunakan PhoneGap , dan semuanya tersedia di mobile app stores dan directori. Contohnya adalah BBC Olympics , My Heart Camera , dan lain sebagainya. PhoneGap code dikontibusikan untuk Apache Software Foundation (ASF) dibawah nama Apache Cordova dan mencapai status top-level project di Oktober 2012. PhoneGap akan dikembangkan dibawah Apache License , menjadi versi 2.0. Nitobi adalah pembuat asli dan salah satu kontibutor utama dalam pembuatan framework PhoneGap. Di oktober 2011. Pada oktober 2011. Adobe memperbolehkan Nitobi untuk focus ke projek phonegap dan melanjutkan pekerjaannya di pengembengan semua paltfom mobile. Ada banyak komunitas yang berkontibusi dalam pengembangan projek ini , dari IBM , IRM , Microsof dan lain sebagainya. Phonegap mempunyai sebuah komunitas aktif terbuka dan menerima kolaborasi siapapun. Jika ingin berkontibusi bisa menghubungi PhoneGap. PhoneGap Build PhoneGap adalah service yang memungkinkan developer untuk membangun aplikasi mobile dengan cepat dan mudah untuk dicompile tanpa SDKs compilers dan hardware. PAPB Kelas D 1.Rinda Wahyuni 115060801111055 2.Andhika Rizqi Eka 115060800111053 PhoneGap explained Visually PhoneGap adalah sebuah aplikasi yang memungkinkan developer untuk membuat aplikasi native untuk perangkat mobile menggunakan HTML, CSS , dan JavaScripts. Script Kode untuk phonegap 100% open source , dibawah projek Apache Cordova. Phone Gap User Interface User interface untuk aplikasi PhoneGap dibuat menggunakan HTML , CSS, dan JavaScripts. UI layer dari sebuah aplikasi PhoneGap adalah sebuah tampilan web browser yang memenuhi 100% tinggi layar , dan 100% lebar layar. Berpikir bahwa ini adalah sebuah halaman web “chrome-less”. Aplikasi PhoneGap membawa HTML content, tanpa “chrome” atau decorasi window dari sebuah halaman web biasa. Kita membangun aplikasi untuk mengambil keuntungan dari ruang ini , dan kita membangun element navigational/interactive/content dan aplikasi chrome ke dalam interface dasar HTML dan CSS kita. Tampilan web yang menggunakan PhoneGap sama dengan tampilan web yang menggunakan Sistem Operasi Native. Di iOS , menggunakan Objective-C UIWebView class; di Android menggunakan android.webkit.WebView. PhoneGap API PhoneGap menyedikan Aplication Programming Interface (API) yang mengizinkan kita untuk mengakses fungsionalitas Sistem Operasi Native menggunakan Java Scripts. Secara logic kita membangun aplikasi dengan dengan JavaScript, dan PhoneGap API mengaturnya dengan Sistem Operasi Native. Untuk informasi lebih lengkap tentang PhoneGap API dan semua fungsionalitas nativenya dapat dilihat di docs.phonegap.com. PAPB Kelas D 1.Rinda Wahyuni 115060801111055 2.Andhika Rizqi Eka 115060800111053 Di tambahan fungsionalitas “out of the box” , kita juga dapat mengubah PhoneGap’s JavaScript ke native untuk menulis “native plugins”. PhoneGap native plugins mengizinkan kita untuk membuat kelas native kita sendiri dan menghubungkannya dengan Interface JavaScripts untuk menggunakan aplikasi PhoneGap. Kita dapat membaca tentang PhoneGap Native Plugins di : http://www.tricedesigns.com/2012/03/01/phonegap-nativeplugins/ dan http://wiki.phonegap.com/w/page/36752779/PhoneGap%20Plugins. Paket Aplikasi PhoneGap dan Distribusi Aplikasi PhoneGap dibangun menggunakan HTML, CSS, dan JavaScript, bagaimanapun hasil akhir dari aplikasi PhoneGap adalah archieve aplikasi binary yang dapat di sebarkan ke lingkungan aplikasi standart. Untuk aplikasi iOS hasilnya adalah sebuah IPA file ( iOS Application Archieve) , untuk aplikasi Android outputnya adalah sebuah APK file ( Android Package) , untuk aplikasi Window Phone outputnya adalah XAP file (Application Package) , dan sebagainya. Itu adalah beberapa format paket aplikasi yang digunakan oleh aplikasi native , dan dapat di sebarkan di semua lingkungan aplikasi ( Itunes Store , Android Market , Amazon Market, BlacBerry App World, Windows Phone Marketplace, dan sebagainya) PhoneGap Arsitektur Aplikasi Level Tinggi Spesifikasi arsitektur aplikasi berbeda pada setiap basisnya. Biarpun begitu data-driven aplikasi dibuat dengan mengikuti aristektur dasar. Aplikasi PhoneGap bertindak sebagai client agar user bisa berinteraksi dengannya. PhoneGap Client berkomunikasi dengan sebuah server aplikasi untuk menerima data. Server aplikasi mengatur business logic dan berkomunikasi dengan sebuah back-end data repository. Server aplikasi biasanya adalah sebuah web server (Apache , IIS, etc…) dan mempunyai sebah server side scripting language seperti ColdFusion , Java , .NET, PHO,dan sebagainya. PhoneGap adalah sebuah agnotic dari back-end technologies dan dapat bekerja dengan banyak server aplikasi menggunakan protocol web standart. Server aplikasi melakukan business logic dan perhitungan , dan menerima atau menahan data dari repository data yang terpisah – biasanya sebuah relasional database , tetapi juga bia semua struktur atau mekanisme untuk penahanan data. Aplikasi PhoneGap biasanya tidak langsung meminta langsung ke sebuah database, komunikasinya adalah melalui sebuah aplikasi server. Komunikasi Client ke aplikasi server dapat berdasarkan standart HTTP request PAPB Kelas D 1.Rinda Wahyuni 115060801111055 2.Andhika Rizqi Eka 115060800111053 untuk content HTML , REST – ful XML services, JSON services, atau SOAP ( atau websockets jika OS kita mendukung). Ada beberapa beberapa teknik yang dapat digunakan di sebuah desktop-browser berbasis AJAX. Arsiktektur client-side biasanya menggunakan Model Single-page application, dimana logic aplikasi berada ddisebuah page HTML single. Page ini tidak pernah diambil dari memori. Semua data akan di display dengan mengupdate HTML DOM, data diterima dari server aplikasi menggunakan teknik AJAX, dan variabel disimpan dimemory dengan JavaScript. Arsitektur Multi-page client-side aplikasi mendukung , tetapi tidak di anjurkan karena kita akan kehilangan variabel memori ketika memanggil page yang terpisah. Kelebihan dan Kekurangan PhoneGap Keuntungan : 1. Multi-platform : IoS, Blackberry, Android, WebOS, Symbian, Windows Phone, dan Samsung Bada 2. Hanya menggunakan Html, javascript dan CSS è dalam artian kita tidak perlu mempelajari java(android), objective C(ios), c# untuk windows phone, dsb. 3. Bersifat open source, shingga module yang ada akan terus dikembangkan oleh banyaknya developer. Kerugian : 1. Reverse-engineering : banyaknya aplikasi yang dapat digunakan untuk code javascript sehingga memungkinkan dilakukannya pengeditan terhadap code aslinya. 2. Adanya beberapa fitur telepon yang tidak didukung Berikut penjelasan fitur-fitur yang didukung dan tidak didukung oleh phonegap : 3. Karena multiplatform, phonegap sering ketinggalan ketika ada fitur baru pada platform aslinya. 4. Tampilan yang ada terlihat sama untuk semua platform, dan tampilan terkadang tidak terlihat seperti mobile app. 5. Banyak kendala apabila disinkronisasikan dengan IOS platform. 6. Walau menghasilkan aplikasi yang bersifat “build once, run everywhere” tetap saja aplikasi yang dibangun tidak seoptimal aplikasi buatan native SDK asli. 7. Alasannya dikarenakan aplikasi phonegap perlu menginterpret kode javascript agar bisa diterima native SDK sehingga membutuhkan waktu lebih untuk menjalankannya. oleh phonegap. Artikel ini juga diposting di http://rindawahyuni.wordpress.com/2013/10/04/apache-cordova-phonegap/ Referensi : http://phonegap.com/ http://phonegap.com/2012/05/02/phonegap-explained-visually/ http://phonegap.com/about/ http://eddysontan.wordpress.com/2012/12/08/native-vs-phonegap/ PAPB Kelas D 1.Rinda Wahyuni 115060801111055 2.Andhika Rizqi Eka 115060800111053