Advertisment

Cellphone Applications with BREW

author-image
PCQ Bureau
New Update

BREW stands for Binary Runtime Environment for Wireless application and device development. Qualcomm is a huge player in the global market for CDMA chipsets, and through its platform provides developers the ability to develop applications for cellphones. Since BREW is

located between the chip system software and the actual applications, the developer can work without worrying about the underlying architecture of the cellphone and, thus, not need to re-code the application for different handsets. Language support is limited to C/C++, but can be extended to Java if the phone supports a Java Virtual Machine.

Advertisment
Direct Hit!
Applies to:

Developers interested in cellphone applications
USP:

A huge platform for application development on CDMA-based phones
Primary Link:

http://brew.qualcomm.com/brew/en/ 
Google keywords:

qualcomm brew

As things stand today, there are two operators in India that support BREW-Reliance Infocomm and Tata Indicom. And there are only a couple of handsets that can run BREW applications, mainly by LG and Kyocera. If you do decide to develop applications in BREW, you cannot test them on your phones without getting them 'test enabled', which is something that can be done through the Qualcomm office in India. For actual applications that you might want to sell, Qualcomm has a whole process through which you need to go through, explained later in this article.

Creating a BREW application



To create an application, you need the BREW SDK (Software Development Kit) that is available free of cost from Qualcomm's website, a Windows development environment like Visual Studio, Eclipse etc, and an ARM compiler. ARM has specifically created a compiler for BREW developers, but it is available at a cost of $1500. Alternatively, you can use a free ARM compiler, like the GNUDE (GNU Development Environment). You will also need to plan for TRUE BREW compatibility testing for your applications, which makes sure that it satisfies the minimum quality standards of Qualcomm. Several wireless operators require BREW applications to pass TRUE BREW testing before making them available to their subscribers. Applications that pass this testing get a digital signature from Qualcomm, which is used by handsets for authentication purposes, before permitting an application to be downloaded or run.

Advertisment

Selling applications

ID from Qualcomm

In actual practice, one must obtain a new ID from Qualcomm for every new application. However, this facility is available to authenticated developers only. However, there is a way out of this problem in that you can manually specify the ClassID as any number. Later, for

deployment, one can get an actual ID from Qualcomm. 

After passing TRUE BREW testing (if required by the operator), the application is posted on the BREW operator extranet with your terms and conditions. Once you strike an agreement with an operator, he will make your application available for download to his subscribers through his own servers. Developers get paid

according to the adoption of their application by the subscribers, and Qualcomm has a complete middleware in place that links

operator networks to manage application distribution and payment. Though Qualcomm makes all TRUE BREW tested applications available to their partner operators,

it is highly recommended that developers themselves also form direct relationships for selling their applications.

Advertisment

Writing applications



Let's now see what it takes to write a basic application in BREW. The SDK is made up of several components, including the 



following.

  • BREW AEE (Application Execution Environment) provides the foundation for BREW applications
  • A set of tools that are the main development elements, like the MIF editor, Resource Editor, Emulator and Device

    Configurator
  • BREW header files
  • Add-ins for Microsoft Visual Studio to aid application development
  • Sample applications
  • Online help

The BREW application wizard for Visual Studio creates a skeletal source file & two other files essential to all applications

Advertisment

Following steps are necessary to set up a basic application.

  • Use the BREW Application Wizard for Visual Studio, which creates the project file, a skeletal source file that has the necessary basic functions, and two additional files (AEEAppGen.c and AEEModGen.c) that are essential to all applications.
  • Create an MIF file that includes the module and applet specific information required to load the applet. If you were to compile the application that you created in Step 1 without this MIF file, you would receive an error since every application must have a unique ID, which is generated in this MIF file.
  • Create resources, such as images, strings and dialogues that are going to be used in the application. Resources are useful since if you need to localize the application to a certain language or

    setting, you simply need to translate the resources in the resource file without worrying about the application code itself.

The Resource Editor creates a BRI (BREW Resource Intermediate) file that contains all the resource ID information for the 



application. It also creates a header file, which must be included in your code.

Advertisment

Testing your application on the Emulator As we are assuming that you do not have a test-enabled

handset to test your first application, you can use the Emulator that comes with the SDK for seeing how it looks on a cellphone. The Emulator presents an image of the handset and emulates

the running of your application, as it will appear on an actual handset. 

First, compile and create the DLL for your application. You can then run this by specifying the applet directory that contains the DLL. The MIF file must be placed in this directory as well.

Keep an eye on this section for more detailed information on BREW. 

Anuj Jain

Advertisment