blackberry / WebWorks

BlackBerry WebWorks for Smartphones is a platform for building deeply integrated web applications for BlackBerry smartphones
http://developer.blackberry.com/html5
268 stars 51 forks source link

BBM Dependency Management #54

Open tneil opened 12 years ago

tneil commented 12 years ago

Overview

The use of the BBM SDK for WebWorks requires certain versions of the BBM application.

In order to provide a positive user experience, a WebWorks application needs to be able to detect that the needed version of BBM is available, and if not prompt the user to download and install the software.

Currently what happens if you use the BBM API on a device that doesn't have the proper version of BBM, is that you get linking errors when trying to use the app leaving the user wondering what is going on

Implementation Details

This feature needs to be implemented in a generic way where we can detect if a dependent application is available on the system and if not provide a friendly message to the user. Implementing this feature requires two applications to be built.

The Launcher Application This application is responsible for doing the lookup in the installation table of the device to see if the desired application exists on the OS. If it exists it will launch the actual main application

The Main Application This is the traditional WebWorks application that is built from the packaging system.

Declaration of the dependencies should be done in the config.xml file in some kind of generic way. An example of what could be done is shown below

<rim:dependency name="com.rim.bbm" version="6.0.0.345" url="http://appworld.blackberry.com/bbm">
   You don't have BBM 6 on your BlackBerry which is needed for this application.  
   Do you want to download BBM 6 now?
 </rim:dependency>

Complications

There will be some complications arise around multiple entry points, run on startup, icons/text on the ribbon (both display and update) among others that will have to be addressed.

patrickmalcolm commented 12 years ago

[1] How do i develop this Launcher Application? [2] How do i interconnect this Launcher Application to my Main Application?

tneil commented 12 years ago

Have you checked out the BBM SDK documentation? I believe it goes through the options there.

patrickmalcolm commented 12 years ago

Neil, I have compiled both core and proxy app, but how do i link them? does the user download both of them (core and launcher)? document fails to give a clear understanding of what i should do after saving both applications.

tneil commented 12 years ago

I haven't done it myself personally.. have you asked the question in the WebWorks forums