osgi on android - value proposition
DESCRIPTION
The Android platform is a great mobile operating system. Nonetheless, there are some important technical areas in which Android is not yet state of the art. This presentation discusses how the OSGi technology complements Android and adds powerful concepts like Web Widgets, Remote Management and SOA.TRANSCRIPT
Complementing Android with Mobile OSGi
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
1
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!!
1
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
• Comes with fully inte-grated OMA-DM Agent
• Eases enterprise usageof Android devices
• Value add for customercare & maintenance
2
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
3
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
3
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
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: