Search code examples
javablackberryblackberry-worldbb-messenger

BlackBerry Messenger integration: UUID for production environment


I've been reading the BBM SDK samples and the development guide. For an application to use BBM platform services, it should register first (it is a call to RIM servers to request access):

BBMPlatformManager.register(BBMPlatformApplication)

An instance of BBMPlatformApplication is passed as parameter. In the samples, an instance is created passing a UUID string parameter to the constructor:

    /**
     * An UUID is used to uniquely identify the application in the test environment
     * before the application is available in AppWorld. If the application exists in
     * AppWorld, the UUID will not be used to identify the application.
     *
     * To run this app, you should generate a different UUID, because there is a
     * limit to the number of users who can share the same UUID.
     * Search for "UUID Generator" on the web for instructions to generate a UUID.
     *
     * For instance, browse to:
     *     http://www.uuidgenerator.com/
     * and copy a UUID in the 8-4-4-4-12 format on the left side of the page.
     */
    private static final String UUID = "";


    /**
     * BBMPlatformApplication serves to provide certain properties of the application
     * to the BBM Social Platform. It is used as a parameter inBBMPlatformManager.register().
     *
     * If your application wants to be invoked in a non-default way, e.g. when
     * you have multiple entry points, you need to subclass from BBMPlatformApplication
     * and override certain methods.
     */
    private final BBMPlatformApplication _bbmApp = new BBMPlatformApplication(UUID);

Reading the comment, it seems like the UUID is only needed when compiling for "test environment" (which implies a limited number of concurrent users, I guess). However, it doesn't explain how to instance the class for applications that are going to be published in App World.

In the online development guide example, BBMPlatformApplication is extended, and again a UUID is passed to super in the constructor:

private class MyBBMAppPlugin extends BBMPlatformApplication
{
    public MyBBMAppPlugin()
    {
        super( "Insert your UUID here" );
    }
}

Is a UUID needed for App World environment? If so, how can I obtain it once the app has been submited?

Thanks.


Solution

  • The UUID is used to uniquely identify an application in the test/pre-production environment. Once you upload the application to BlackBerry App World, it is no longer used. Changing your UUID allows you to perform tests of your application in isolation of one another.

    this info is from http://devblog.blackberry.com/2012/05/bbm-uuid/