BlackBerry Casual Meetup
@ziyadbazed
Who Am I?
Topics
Which Programming Environment
QNX
Adobe AIR/FLEX
Android
WebWorks
Which Programming Environment?
QNX Native C
Developing with Adobe AIR
Easily adapt and deploy existing content
Native BlackBerry® PlayBookTM tablet component set lookand feel
Access to native API’s with Adobe® AIR® Native Extensions
Lots of great community support
Lots of open-source frameworks
Great tools for creating rich animations.
Renders vectors so content can scale without loss in quality
Flash Platform
How Flex Works
Adobe AIR
Adobe AIR
Android PlayerEnable Android software stack running on the BlackBerry PlayBooktablet, including
Application Framework
Dalvik VM
Graphics and Media
Storage, e.g. SQLite
Device Access, e.g. GPS, accelerometer, compass, etc
Run at full speed directly on the OS kernel
Optimized performance; NOT virtualized
Tightly integrated with the underlying OS
Currently based on Android 2.3.3 (aka Gingerbread)
Overview
Native IntegrationGraphics
Hardware accelerated OpenGL ES and screen composition
Media Framework
Multi-touch
Sensors
Accelerometer, gyroscope, compass, etc.
Networking
BlackBerry PlayBook tablet Virtual Keyboard
UX / BlackBerry PlayBook tablet Home Screen
Application Launching/Minimizing/Thumbnail, Notifications, etc
Native IntegrationImplicit Intents with launching applications
Email, Camera, Photo Gallery, Video Recorder, Settings, etc.
Implicit Intents with launching file viewers
.pdf, .doc, .xls, .ppt, .png, .jpg, .gif, audio, video, etc.
Shared storage for public data
/sdcard/ -> /accounts/1000/shared/misc/android/
Accessible by other native applications and through USB
Installation
Android application is packaged as a BlackBerry Archive (BAR)
Deploy through BlackBerry® App WorldTM like other BlackBerry PlayBook tablet apps
ToolsADT Plug-in for Eclipse® + BlackBerry Plug-in for ADT
BlackBerry PlayBook tablet is just another device target for your existing Android project
Debugging applications on BlackBerry PlayBook tablet just like onother Android devices
adb, ddms, jdwp, logcat, etc.
Repackaging your existing Android applications
Online tool: https://bdsc.webapps.blackberry.com/android/bpaa/
Command line tools
BlackBerry Playbook tablet Simulator (device recommended)
Support Windows®, Mac OS X, and Linux®
Android CompatibilityAndroid 2.3.3; API level 10
Most APIs are fully supported with a few exceptions:
NDK
Add-on libraries, e.g. Google MapsTM, C2DM etc.
Embedded camera view through android.hardware.Camera API
SIP, VOIP, Bluetooth®
Widgets
Applications with no UI
HTTP progressive streaming
Some of these exceptions *may* go away in future releases
What is BB WebWorks?
BlackBerry WebWorks is an application platform that enables developers to create standalone applications using modern and standardized web technologies.
User’s Perspective
Developer’s Perspective
WebWorks Developer’s Perspective
WebWorks is a Web view
WebWorks is a Web view
WebWorks is Cross Platform
Architecture
WebKit'Engine'
WebWorks'Pla2orm'
Security'PIM'
Storage'
Push'
Media'Hardware'
'BBM'Mone?za?on'
Compression'
Background'
Mul?CTasking'
BlackBerry'Pla2orm'
…'
Your'app'
• User%interface%– Powered%by%Web%
– HTML%and%CSS%
• Applica<on%logic%– JavaScript®%– WebWorks%APIs%
– Access%to%PlaCorm%OS%
What WebWorks can do?
Services(&(Content(
GPS$
WEB$SERVICES$
PUSH$
MENUS$
APPLICATION$INTEGRATION$
STORAGE$
SYSTEM$$EVENTS$
SQLite(
File(System(
BROWSER$ENGINE$
How to build BB WebWorks app?
Setup Development Environment
Write application content (HTML, CSS, JavaScript files)
Create a ZIP archive containing these Web assets
Package your application using the WebWorks SDK
3rd Party FrameworksjQuery Mobile
jQuery UI
jQTouch
xui
Sencha Touch
Wink
Jo
etc
Use jQuery Mobile
Use Backbone.js
Packaging
Java SDK
BlackBerry WebWorks SDK
BlackBerry WebWorks SDK for PlayBook
Adobe AIR SDK
BlackBerry Smartphone
BlackBerry PlayBook
Packaging(Process(
*.bar(
Packaging(
Process(
WebWorks Application
Archive (ZIP)
*.cod(
PlayBook Development
Smartphone Development
Development Lifecycle
Ripple
Q&A
Top Related