Adding advanced Device Capabilities to Android
Introduction
• This presentation is about enhancing Android with a number of advanced, open device capabilities.
• The enabling technology is Mobile OSGi, a powerful, standardized, cross-OS framework for APIs, Services and Middleware (available for other OSes incl. Win Mobile)
OSGi complements, not competesthe Android programming model
Technical Value Add
Mobile Web Widgets• OSGi adds support for
Web Widgets like JIL, Bondi, W3C, Opera, etc.
• Support for multiple browsers and Flash
• JavaScript APIs (custom APIs or enabler APIs) pluggable at any time
Best of Breed: Browser for UI Java for Business Logic
Mobile Web Widgets, cont.
Web Server
Mobile OSGi
WebRuntime
WidgetApp
WidgetAppWidget
AppWidget
App
JSPlatform
APIs
JSCustom
APIs
JSCustom
APIs
JSCustom
APIs
WidgetApp
Dep
loy
CustomModule
CustomService
CustomModule
PlatformEnablers
(Camera, Messaging,
BT, etc.)
Technical Concept:• Middleware components are deployed into OSGi• OSGi Services (incl. custom code) can be auto-translated into Web Services • JavaScript APIs (i.e. wrappers for OSGi services) loadable from localhost• OSGi is fully manageable from remote (app lifecycle, diagnostics,etc)
Pushes the limits of web widgetsas developers can break out ofthe browser sandbox!!
Remote Management
Supported Features:• Android & OSGi App Lifecycle Mgmt• App Push Deployment• App Uninstall, Update• App Start/Stop
• Remote Configuration• Remote Monitoring• Remote Lock & Wipe• Server Initiated Session Support• Postload of Agent possible
Supported Standards:• OMA-DM 1.2• OMA-DLOTA 1.0• OSGi 4.0 MOs• SCOMO• LAWMO
• OSGi adds remote Management capabilitiesto Android
• Eases enterprise usageof Android devices by intelligent remote controland security features
• Value add for corporateIT and customer care
OSGi Programming Model
• Full support for all OSGi features• OSGi Sevices can be consumed by Android apps• Event bus integration between OSGi and Android
• OSGi has become a mainstream Javaprogramming model with a growing community
• OSGi brings a huge pool of existing componentsand knowhow to the Android space
• OSGi turns Android into a true enterprise SOA
OSGi Use Case Example
• OSGi simplifies implementing (Digital Life Network Alliance)
• Hides complex DLNA protocol behind API• Offer APIs to developers to create apps on top
This has been launched as an App in the Android Market:
MediaServer
http://dz.prosyst.com/mediaserver/
OSGi Value Propositions
Proposition for Carriers and OEMs
Apps&
APIs
Add & manage yourAPIs & Appsat any time
You control the platformValue Add not Google
Lets you & the community do more than just Apps!Opens the Platform for Innovation
Open for Innovation beyond Apps
• Android is open for 3rd party Apps, not for APIs.
• A lot of creativity & innovation of the community remains untapped
• With OSGi you have a standardized, powerful instrument to open up for 3rd party services and APIs.
• Benefit: More innovation on your devices, new business models
Proposition for Corporate Enterprises
Enterprises discover mobile handset as strategic elements of their IT infrastructure. However, Android does not come with all required features:• OSGi provides enterprises an own remote
management channel right into their applications• OSGi adds application push deployment and
lifecycle management.• OSGi offers Lock& Wipe, a key requirement
Proposition for Developers
• Web and J2EE developers become mobile developers without additional learning(due to Widget and OSGi programming models)
• Developers can turn Widgets into powerful localapplications with full access to all phone features
• Developers have control over the APIs on the device (they can add their own API at any time)
• Developers can reuse their existing OSGi Java assets• Developers can modularize their applications
What is OSGi?
OSGi: An Open Industry Standard
• The Dynamic Module System for JavaTM• Specification developed by the OSGi Alliance• Adopted by a rapidely growing community
OSGi: Architecture
Hardware Platform
Operating System & Drivers
OSGi
Device
Service & Component Framework
APIA
ServiceB
ApplicationC
Native App
Browser
• OSGi is a manageable component framework• It hosts apps, services and middleware• It can inject functionality into the browser
LoadableModule
Available for:
Top Related