The following suggestion works for OTA installations. I'm not sure how BlackBerry World handles this.
You can have a service that returns the latest version of the application.
The application will call this service at startup(or once a day/week/month - however you want to define this). Then you make this check:
if(serverReturnedVersionNumber>currentApplicationVersionNumber) {
//popup to ask if user wants to upgrade?
BrowserSession browser = Browser.getDefaultSession();
browser.displayPage(urlToDownloadNewVersion);
System.exit(0);
}
The urlToDownloadNewVersion
should return a text/vnd.sun.j2me.app-descriptor
mime-type(that's a .jad file) that should install the new version of your app(OTA installation).