Every now and then I stumble over BREW, an API for third party applicatins on mobile phones. Since it seems to be mostly implementend in CDMA phones in the U.S., I haven’t come into personal contact with it and thus always wondered what the difference is to Java ME. After doing some research it looks to me like they have one thing in common: They both offer a cross device environment to programs. Apart from this, however, there don’t seem to be many similarities. BREW supports several programing languages including Java (but with a different API from Jave ME) and C++. While programs developed with Java ME can be distributed without the consent of the operator, BREW applications need to be certified and can only be distributed by the operator. So the business model for developers is quite different since they need to make a deal with each network operator they want to deploy their application with. In addition, network operators have no obligation to distribute a program, so developers and users are at the full mercy of the operator. To me that does not only look like a walled garden but more like a closed fortress. An environment with a future?
4 thoughts on “Java and BREW”
Comments are closed.
Your analysis is not wrong but specious. It is true that users can download Java apps on their phone without involving the operator. The operator provides nothing more than a bitpipe. The problem is that any service that is not under the operator’s controlled is difficult to provision. QoS cannot be guaranteed. End-to-end problems dampen user experience.
The point about BREW is that such problems are not present. Service provisioning, QoS management and billing are all under operator’s control. These are enabled by BREW and associated platforms from Qualcomm.
BREW developers need not even talk to multiple operators. Developers need to agree on the numbers for revenue sharing with Qualcomm. Only Qualcomm talks to operators when applications are chosen by the latter for deployment.
We can’t really say if Java is better than BREW or vice versa. Each have their advantage. Developers have choice. Developers have to consider not just the technology but the business models as well. As far BREW supporting Java, running Java application on BREW is a dead idea. It is much better to convert a Java application to a BREW-enabled application. I have heard that this is easily done but I have not tried it myself.
Reading through the BREW specs, noticed that the ideea is to give the large wireless operators an unprecedente chance to catch the biggest slice of application and content delivery. No doubt, the market is growing sustainable and the big players cannot take the risk to lose momentum, considering also the considerable advantage of endorsement by the major handset manufacturers. What chance will have then the “independent” application providers? To build alliances though…
Nevertheless, from day to day experience could be seen that the large mass of end customers are looking for fashionable and standard solutions.
Hi Arvind,
Thanks for your feedback. Being a non native speaker I had to look up the word specious 🙂 Well, I would have preferred “opinionated”, which I definitely am. I just don’t like to be locked away and go through two middle men.
Cheers,
Martin
Now a days J2ME have been used vastly all over the world for mobile applications.