Building Apps with PhoneGap
Andrew LunnyNitobi Software
@alunny
Sunday, August 22, 2010
• Vancouver BC
• Web and Mobile development/consulting
• small-ish: ~18 employees
Nitobi Software
Sunday, August 22, 2010
Sunday, August 22, 2010
One Good Bit
http://www.webmonkey.com/2010/08/how-do-native-apps-and-web-apps-compare/
Sunday, August 22, 2010
There are some things the web does very well.
There are also some things native apps do very well.
PhoneGap aims for the union of these.
Sunday, August 22, 2010
What is PhoneGap?
Sunday, August 22, 2010
PhoneGap is a cross-platform, open source mobile development framework for using front-end web technologies to build (and sell!) native mobile apps.
Sunday, August 22, 2010
PhoneGap is a cross-platform, open source mobile development framework for using front-end web technologies to build (and sell!) native mobile apps.
Sunday, August 22, 2010
Cross-PlatformWrite once, test/debug/rewrite everywhere
Sunday, August 22, 2010
• Today
• iOS, Android, BlackBerry 4.6+ (forwards compatible), Palm WebOS, Symbian WRT
• Soon
• Windows Phone 7, BlackBerry widgets (5.0+, not backwards compatible)
Sunday, August 22, 2010
Cross-Platform != One Codebase
back button? menu?
Sunday, August 22, 2010
PhoneGap is a cross-platform, open source mobile development framework for using front-end web technologies to build (and sell!) native mobile apps.
Sunday, August 22, 2010
MIT Licensednow and forever
“The MIT License states explicitly the rights given to the end-user, including the right to use, copy, modify, merge, publish, distribute, sublicense, and/or se" the so#ware.”
Just include the copyright notice in your source code, and you’re done
Sunday, August 22, 2010
github.com/phonegap
The license grants the right to:
• Build apps• Sell apps• Build and sell services using PhoneGap• Customize PhoneGap
• Contribute back• Not contribute back
Sunday, August 22, 2010
PhoneGap is a cross-platform, open source mobile development framework for using front-end web technologies to build (and sell!) native mobile apps.
Sunday, August 22, 2010
It is a requirement of the project that PhoneGap will not get your app rejected by Apple.
Sunday, August 22, 2010
PhoneGap plays by the rules
• for iOS, PhoneGap is an Objective-C static library, built with XCode, using techniques Apple devs have recommended
• jailbreaking is not required
• additional software on the device is not required
• same for all other platforms
Sunday, August 22, 2010
Your app can still be rejected• It probably will if
• your app is just a wrapper around a mobile web site
• you load all application code from a remote server
• it violates the TOS
• It probably won’t if
• you take advantage of native functionality
• you offer unique content
• you offer a great user experience
Sunday, August 22, 2010
It can also be featured on the app store
Sunday, August 22, 2010
PhoneGap is a cross-platform, open source mobile development framework for using front-end web technologies to build (and sell!) native mobile apps.
Sunday, August 22, 2010
Remember Wired?Sunday, August 22, 2010
What PhoneGap gives you
• Offline by default
• Access to hardware sensors (device-dependent)
• Accelerometer, GPS, Orientation, Compass
• Media integration
• OS integration
• Camera, Contacts, File System, etc
Sunday, August 22, 2010
And anything else you wantPhoneGap is a native
project, and it’s all open source. If you need any
native code, dive right in.
Sunday, August 22, 2010
PhoneGap is a cross-platform, open source mobile development framework for using front-end web technologies to build (and sell!) native mobile apps.
Sunday, August 22, 2010
• HTML(5), CSS as usual
• JavaScript handles all of the application logic
• persistent storage (SQLite db, localStorage)
• network requests (cross-domain XHR, since we’re running from file://)
• view templating
Sunday, August 22, 2010
We use what’s there
• Browser/web view on the device
• (A) WebKit: iOS, Android, Palm, Symbian
• BlackBerry: pretty bad - will be WebKit in OS 6.0
• Windows Phone 7: “evolved” IE7 (between IE7 and IE8)
Sunday, August 22, 2010
What isn’t PhoneGap?
Sunday, August 22, 2010
UI Framework - a bit of a mixed bag
• jqTouch, Sproutcore Touch, Cappuccino
• Sencha Touch (licensing permitting)
• jQuery Mobile (when it ships)
DOM framework
• your favourite one will work (jQuery, Prototype, Dojo)
• we develop and recommend XUI - github.com/xui
Sunday, August 22, 2010
Solution for all problems
• Don’t write games, video editing, VNC apps - the performance won’t be there
• Similar when dealing with large datasets and files
• Not a replacement for a mobile web app
Sunday, August 22, 2010
nitobi.com / phonegap.com
Thanks!
Sunday, August 22, 2010
Top Related