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.
|
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.
Selling applications
|
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.
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
|
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.
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