android development...using web technologies

27
 Rich Web Experience 2010 Android Development... Using Web Technologies

Upload: commonsware

Post on 14-May-2015

2.319 views

Category:

Technology


0 download

DESCRIPTION

from the Rich Web Experience 2010 conference, an overview of options for building Android applications using Web technologies

TRANSCRIPT

Page 1: Android Development...Using Web Technologies

   

Rich Web Experience 2010

Android Development...Using Web Technologies

Page 2: Android Development...Using Web Technologies

   

Setting the Stage

● Traditional Android Development– Source = XML and Java– Executables = APK files

● Distribute on the Android Market● Distribute by other means as desired

– Fun! Exciting!! No Resemblance to the Web!!!

Page 3: Android Development...Using Web Technologies

   

Setting the Stage

● Web-tastic Alternatives!– HTML5– Web App Containers

● PhoneGap● Rhodes● Titanium Mobile

– Adobe AIR

Page 4: Android Development...Using Web Technologies

   

HTML5

● The Good News: Built-In Browser Support– Local Storage– Offline Caching– <video> Element

Page 5: Android Development...Using Web Technologies

   

HTML5

● The Bad News– No distribution support– No launcher support– HTML5/related specs still a work in progress– Limited device integration

Page 6: Android Development...Using Web Technologies

   

HTML5

● Alternative Browser Support– Firefox Mobile (beta)– Opera Mobile (beta)– Dolphin HD 4.0

Page 7: Android Development...Using Web Technologies

   

Web App Containers

● Concept: Augmented HTML– Native APIs– Native APKs– Other benefits

● Language● Widgets

Page 8: Android Development...Using Web Technologies

   

PhoneGap

● What You Get– Javascript bridge to native APIs– Packaging as an APK for distribution– Cross-platform portability

Page 9: Android Development...Using Web Technologies

   

PhoneGap

● How You Get There: Local Development– Requires Android SDK and dependencies– droidgap script to generate application stub– You create HTML, CSS, Javascript– Use Apache Ant build system to create APK– Test on emulator, device

Page 10: Android Development...Using Web Technologies

   

PhoneGap

● How You Get There: Cloud Development– build.phonegap.com (in private beta)– Upload HTML, CSS, JS assets

● ZIP, Git, SVN

– Download APK and binaries for other devices– Free for open source, non-free for commercial

Page 11: Android Development...Using Web Technologies

   

PhoneGap

● Extending the Framework– Plugins– Replacement wrappers– Code generators

● OpenLaszlo

– Open source

Page 12: Android Development...Using Web Technologies

   

PhoneGap

● Issues and Limitations– Permissions– Look and feel

Page 13: Android Development...Using Web Technologies

   

Rh0des

● What You Get– Ruby interpreter– Rails-esque Web app framework– Ruby bridge to native APIs– Packaging as an APK for distribution– Cross-platform portability

Page 14: Android Development...Using Web Technologies

   

Rhodes

● How You Get There: Local Development– Requires Android SDK and NDK, plus

dependencies– Ruby gem supplies command to create project

● Also other generators, etc.

– Rake script to build application, install to emulator, etc.

Page 15: Android Development...Using Web Technologies

   

Rhodes

● How You Get There: Cloud Development– RhoHub TaaS (Tools as a Service)– Generates Git repo for your app– Request builds as needed

● Specify platform and version

Page 16: Android Development...Using Web Technologies

   

Rhodes

● Issues and Limitations– Application size– Permissions– Look and feel– Programming paradigm (classic vs. JS-centric)

Page 17: Android Development...Using Web Technologies

   

Titanium Mobile

● What You Get– Javascript bridge to native APIs

● Focus on native GUI widgets, laid out using HTML/CSS

– Packaging as an APK for distribution– Cross-platform portability

Page 18: Android Development...Using Web Technologies

   

Titanium Mobile

● How You Get There– Download Titanium development tool– Create project template– Fill in project using own tools– Package and test using Titanium

Page 19: Android Development...Using Web Technologies

   

Titanium Mobile

● Issues and Limitations– Permissions– Hybrid look and feel– Increased dependency on proprietary API

Page 20: Android Development...Using Web Technologies

   

Adobe AIR

● What You Get– Ability to take AIR desktop applications and

convert to Android APKs● What You Don't Get

– Flex– Deep device integration

Page 21: Android Development...Using Web Technologies

   

Adobe AIR

● How You Get There: Standard Choices– Creative Suite– Flash Builder– FlashDevelop– AIR development tools and your own

environment

Page 22: Android Development...Using Web Technologies

   

Adobe AIR

● Issues and Limitations– Requires runtime engine as separate APK– Requires Android 2.2+

Page 23: Android Development...Using Web Technologies

   

What's Still Needed?

● More HTML5 Discoverability● More Seasoning and Experience● More Mobile-Friendly Frameworks

– Examples: Sencha Touch, Jo

Page 24: Android Development...Using Web Technologies

   

Where Do We Go From Here?

● Web App Containers– PhoneGap: phonegap.com– Rhodes: rhomobile.com– Titanium Mobile: appcelerator.com

● Adobe AIR: www.adobe.com/products/air/

Page 25: Android Development...Using Web Technologies

   

Where Do We Go From Here?

● Rich Web Experience 2010– Today

● The Future of Mobile: Learn to Build W3C Widgets and Device APIs with PhoneGap

● Choices in Mobile Application Development

Page 26: Android Development...Using Web Technologies

   

Where Do We Go From Here?

● Rich Web Experience 2010– Friday

● Ted Neward's all-day Android-a-palooza (a.k.a., workshop)

● Easy Mobile Development Workshop: Mobile GUI Frameworks

● Easy Mobile Development Workshop: Appcelerator Titanium

Page 27: Android Development...Using Web Technologies

   

Q & A