Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Handhelds Hardware

Developing for the Motorola T720 152

r0.ini writes "Nice step-by-step introduction guide on how to make that cool app for your T720." Worth a read even if you never intend to write a program for your cell phone, for the comparison between BREW and J2ME (and implicitly between Verizon and AT&T).
This discussion has been archived. No new comments can be posted.

Developing for the Motorola T720

Comments Filter:
  • Cool beans! (Score:1, Funny)

    by JPriest ( 547211 )
    Cool beans!
    • as in java beans?

      sorry
    • I'd not rush out to get a T720 myself. Having developed for it for several months now, I can safely say that it is buggy, slow and clunky (IMO). The Nokia 7650 is better, but you can't do much with any of the J2ME phones (i.e. sound, addressbook) until MIDP2.0 comes out - give it 'till late 2003...
  • by Anonymous Coward on Saturday December 14, 2002 @02:37PM (#4888090)
    Do you realize how close they are to releasing the T-1000? We're all going to die!
  • Background Image (Score:4, Informative)

    by RobertTaylor ( 444958 ) <roberttaylor1234@noSPAm.gmail.com> on Saturday December 14, 2002 @02:40PM (#4888106) Homepage Journal
    slashdot now linking to porn? mmm I suppose that is one use for a colour screen....
  • by RobertTaylor ( 444958 ) <roberttaylor1234@noSPAm.gmail.com> on Saturday December 14, 2002 @02:42PM (#4888111) Homepage Journal
    Only after getting the cell phone, however, did I realize the amazing freedom of being able to call or be called anywhere at any time.

    Someone give him a coconut.
    • Only after getting the cell phone, however, did I realize the amazing freedom of being able to call or be called anywhere at any time.

      Someone give him a coconut.

      Considering the quality of cellphones today, it actually is quite amazing if you can make a phone call with the new nifty device containing tons of bells and whistles they call a cellphone. It seems that nowadays the ability to make a phone call is not as important as the ability to play games and take photos.

  • If you get a contract with Verizon, and you choose the
    Motorola T720, the phone executes BREW only.

    If you get a contract with AT&T, and you choose the
    Motorola T720, the phone executes J2ME only.


    I've had my T720 from Verizon about a month now, too late to return it and cancel my account.
    I'd love to develop my own apps and share them with the community but because I chose Verizon it looks like I'm SOL :(
    • I just got a T720. And I think I'll be cancelling my service after reading this. Not necessarily because I wanted to write my own apps, but because I don't feel like I got a great deal, and don't want to get locked into a real mess.
    • Yep, there's a huge market for J2ME software - I've written some J2ME games (see sig) that anyone can download for free, and the Pman game alone has taken over 7,000 downloads since it went up! A lot of these are for the T720.

      The only slightly irritating part of it is that people download the wrong version of the games for their phones a lot of the time, even though I try to spell it out for them! I guess I'll have to set my site up to redirect based on the phone's user agent...

      Once MIDP2 is adopted, hopefully we can just develop for the single platform - at the moment you can't really do that for anything except the simplest games since the manufacturers all deviate from the current spec in one way or another.
  • BREW (Score:4, Interesting)

    by Emrikol ( 21551 ) <emrikol.decarbonated@org> on Saturday December 14, 2002 @02:45PM (#4888127) Homepage
    As a person who sells phones for an indirect Verizon Wireless agent, I think that this sucks. Verizon's just going to dig themselves into a hole. First they kill our commissions ($5.00 per phone I sell), then they team with Microsoft, and now they are leaving out some of the biggest buyers in the high end cell phone market: Geeks.

    Shame on you Verizon...shame shame shame!

    • Well, isn't that what VZ does best? I work for that shop and a government couldn't have more bureaucrazy.
      We standardisized on lotus Notes, IE and so on - just to be a M$ only shop... Those guys just dont understand that there are other ways than force every single cent out of the customers. *shrugs* Make the bottomline look good for a year, get your bonus for the merger and then leave before the whole company goes to hell...
    • by XO ( 250276 )
      Apparently you're just reading into Colin's rhetoric, and not actually pulling out a phone and finding anything out. The T720 with Verizon operates just like the T720 with AT&T. Maybe you had an early software version, but the one I have here in my store, I have used to run the same programs I've run on a SprintPCS phone, and it works just fine.

      There was a "major" software update for the T720 about three weeks ago, though I don't know exactly what it did, we were told that it was mandatory to be able to download and run "certain types" of programs.

  • damn (Score:1, Funny)

    by Anonymous Coward
    "Nice step-by-step introduction guide on how to make that cool app for your T720."

    I do not have a T720, you insensitive clod!
  • wow! (Score:2, Funny)

    by Anonymous Coward
    what was the article about? i kind of got hung up on the first few photos.
  • by Anonymous Coward
    Warning : Do not read the follwing if you have the mental condition called
    'ethics', ethics has ruined science and has kept the world from becoming better. If you are like most people, and you dont care, then read on


    The universe is properitry! Think about it, science so far has reverse
    engineered an infinitley small percentage of its interneals. The GNUniverse
    projects aim is to create a gpled implementation of the universe. It will be a
    big task. Our aims are huge, our first step is to reverse engineer the current
    one until we can create the 'Open bang'.

    We are slowly making progress every day. It could be many of millions of years
    before our dream is a reality, but remember, we are still trying to get usb
    support in the
    hurd at the moment, so give us time.

    Please help our quest, you will be free from the taboos of the properitry
    universe!
  • what about t-mobile? (Score:2, Interesting)

    by r0b0t b0y ( 565885 )
    hmm..i just ordered the T720 from T-Mobile

    does anyone know if T-Mobile uses J2ME or BREW?
  • J2ME on phones (Score:5, Informative)

    by fliplap ( 113705 ) on Saturday December 14, 2002 @02:55PM (#4888182) Homepage Journal
    I totally agree with this guy, J2ME is really cool. I went to lunch with a couple friends the other day and they both had java phones. So i came home, grabbed Sprint's Wireless Toolkit and started playing with it.

    I'm really impressed how fast you can develop applications for it. One friend wanted a tip calculator, which took about 5 minutes after I figured out how everything worked. It is alittle different from standard Java and you're missing some important things such as floating point numbers (float and double are gone). So it does take some getting used to.

    But most things are really easy todo, such as writing a small app to send SMS messages, the important part of the code is only about 10 lines long. Check it out, I'm planning on picking up one of the Sprint phones when my contract expires in a few months
    • One friend wanted a tip calculator, which took about 5 minutes after I figured out how everything worked. It is alittle different from standard Java and you're missing some important things such as floating point numbers (float and double are gone). So it does take some getting used to.

      Why spend hours researching how to program applications on your cellphone? I stick to simple math, man.

      Let's say your bill is $17.48 at a restaurant and you have to leave the tip.

      If bad service: Move decimal one place left ($1.748, which you just round to a dollar and three quarters). This is a 10% tip.

      If good service: Use the method above, only multiply the amount by two ($1.75 x 2 = $3.50). This is a 20% tip.
      • The tip calculator was the equivilent of a Hello World, it was just something quickmto I could learn the structure of J2ME apps. Btw, an even easier way is if you live somewhere where tax is ~7.5%, you just double the tax, give or take a few cents.
  • by Anonymous Coward on Saturday December 14, 2002 @03:03PM (#4888212)

    Only after getting the cell phone, however, did I realize the amazing freedom of being able to call or be called anywhere at any time.

    Yes, having people call you ANYTIME ANYWHERE is quite a "freedom".

    If I ever give in and get a cell phone, it will be for outgoing calls only, that's for sure.

    • Just because people can call you anytime, anywhere doesn't mean you have to answer the phone everytime, everywhere...
    • You can always turn your phone off.

      Or leave it at home.

      Sheesh.
    • Yes, having people call you ANYTIME ANYWHERE is quite a "freedom".

      If you aren't willing to speak to friends, then you will soon run out of friends. I don't know about you, but I like it when someone gives me a call. I also like the fact that I have a device in my pocket that lets me call or be called by any friend anywhere on the planet. Ever tried to meet up with a bunch of friends at a festival, or in a busy city? Or you are running late and just what to let them know? Jeez, it's one of the best inventions of the 20th Century!

      As for business, get a personal mobile and don't give them the number. How hard is that?

    • Yes, having people call you ANYTIME ANYWHERE is quite a "freedom".

      It is very useful if you're waiting for someone outside the cinema and their car breaks down.

  • Man,
    Too bad my phone is through my work. I'm gonna have to talk to our account rep about BREW.
  • This is so f**king cool ... hmmm .. maybe I'll learn Java now ... it would be cool to have your phone itself go out and check your email for you ;)
  • by ziemowit ( 634281 ) on Saturday December 14, 2002 @03:15PM (#4888259)
    I had an opportunity of developing applications for both environments BREW and J2ME on Motorola T720. I agree that deploying BREW application for real phone is quite complicated and expensive. But there are ways to lower costs of development. For example, it's possible to use GCC crosscompiler for ARM which saves $1500. It's not easy, but it works! And I believe that author of the article didn't even try to develop any J2ME application for T720 phone. I did, and J2ME is about 20 times slower than BREW, which makes it completely useless...
    • by Anonymous Coward
      Ziemowit,

      Yeah, I thought that guy was an open-source zealot, too.

      BREW is good if you as a developer want to actually make money, without having to manage downloading and billing. I think BREW is pretty cool, once you get past the initial learning curve.

      3.0 is also coming soon, which will supposedly do away with the ARM compiler ($1500) requirement, and allow gcc to be used. This is excellent, and should really be good for developers.

      • I think you actually mean an "open-standards zealot". J2ME is a very thoroughly documented open standard. J2ME implementations are free to be closed-source and I believe most of them are.


        I freely admit to being both an open source and open standards zealot. With that said, it is very difficult to argue with what I took to be his main point. Namely, if you intend to do some coding for personal use or enjoyment, you will probably find J2ME much more suitable than BREW. This is especially true if you already like Java.

    • Is it possible to replace the OS on the phone, to upload software without some bossy 'environment'? Not that you'd want to do this most of the time, but it's nice to know you have the option, or for specialized applications.

      In other words, does it run Linux?
    • I think J2ME is a good idea because platform independency is very important for cell phones. Performance is also quite important for games. All current J2ME phones seem to use a interpreter based VM, because a Just-in-Time compiler is too complex for a phone. What about network-side just-in-time compilation ? You could get nice speed and platform independency. The WAP gateway already compiles the ASCII based WML into a smaller and easier to render binary format. Why shouldn't it also compile J2ME midlets ? With caching that shouldn't require too much performance.
      • by Anonymous Coward
        There is at least one microprocessor on the market which executes Java bytecodes directly. It has been demonstrateed to lots of cell phone companies, with benchmarking data as well as live demos which show that it is faster because there is no interpreter.

        This web page shows a working prototype device which executes all of its software in Java.

        http://www.ajile.com/

        (disclaimer: I work for aJile)
    • by FyRE666 ( 263011 ) on Saturday December 14, 2002 @07:22PM (#4889334) Homepage
      And I believe that author of the article didn't even try to develop any J2ME application for T720 phone. I did, and J2ME is about 20 times slower than BREW, which makes it completely useless...

      I'd be interested in hearing where you got the "20 times faster" statistic from. It's far from useless though, I've seen some previews of some awesome games that are coming on J2ME. If your efforts turned out too slow, then maybe it was your techniques?
    • ziemowit, how do you compile using gcc (details?)
      and then how do you upload the app to the phone!

      any help would be appreciated.

      (you can email me @ jrmbadger2003@yahoo.com)

      thanks
  • I think it's great that that Sprint and AT&T are allowing any developer to provide content, but it's not always the case. In the work I'm doing I have to navigate a maze of different options depanding if the carrier is a Walled Garden or not.
  • by weave ( 48069 ) on Saturday December 14, 2002 @03:28PM (#4888317) Journal
    Read the alt.cellular.verizon newsgroup about the T720. A few people like it, but the majority who have bought it or who work in the retail stores think it's garbage. Apparently the system software is buggy as hell.

    I don't know about you but I want a mobile phone to make calls. I don't need a phone that decides to crash and reboot in the middle of a call... I have enough headaches with PCs, I just want my phone to work. (ps, I have never tried one, just my observation from reading that newsgroup when I was trying to decide what phone to buy. Based on the rants, I got a v60i for the wife and hung onto my trusty 2 year old moto 7868W startac which has always worked like a champ)

    Sounds like a good script for a horror movie. The bad guy is about to slash you up in bits, you reach for your fancy cell phone, and it blue screens while trying to call 9-1-1

    • First off, check the dates on the posts in the forums - the first batch of Verizon T720's (circa October) were recalled due to buggy firmware.

      Second, the majority of the people in the alt.cellular.verizon group aren't mad that the T720 is bad, they're mainly mad that "next generation feature X" isn't in it. True, the T720 isn't the holy grail of high end cell phones - it's a "lite" entry for those who want a color screen.

      Finally, most of the newsgroup complaints come from people whose coverage area is bad. It may be that the T720 is less forgiving of bad service. Well, I've had one for a month now and I've been all through Texas with no problem. Perhaps Verizon just likes the Lone Star State.

      • The reviews on phonescoop.com seem to be very positive. Every customer I've ever sold a 720 to has been very happy with it (except for the one guy who decided he didn't want a phone with "all the bells and whistles" so went for a v.60 instead, at double the price. lol)

        I won use of a T720 free for a month, and I thought it was great. Reception was certainly a lot better than my T2260.

        Only reboots I've ever had with a Motorola phone are on low battery conditions - my T2260, when the battery is excessively low, but the phone hasn't realised it yet, will receive a call, it'll ring, say "CALL" on the display, and then it'll power off, back on, and go "Searching..." "Low Battery" then power off. doh.
  • by rosewood ( 99925 ) <.rosewood. .at. .chat.ru.> on Saturday December 14, 2002 @03:43PM (#4888375) Homepage Journal
    I know my Samsung S105 supports J2ME but Ive yet to see any good free J2ME programs out there that do anything worth wild.
    • by Anonymous Coward
      I just found this yesterday: http://www.chesseverywhere.com

      It allows you to connect to a chess server to play people.
      While using the phone to manipulate pieces is slow (don't try playing any blitz without a good amount of increments) it's pretty mindblowing that I can play chess in realtime with someone across the world on my phone.
  • by rjamestaylor ( 117847 ) <rjamestaylor@gmail.com> on Saturday December 14, 2002 @03:56PM (#4888448) Journal
    I'm not happy after reading this article. Imagine! BREW isn't even free as in beer!

    Although I have not intention (at all) of developing or using programs on my phone knowing that my phone has been hamstrung is very annoying. AAMoF, I currently pay $100/mo for a family plan, thus a $175 fee to cancel my contract (which I just renewed for two years) is not very painful: if I cancel now I'll deprive VZN of at least $1100. . .

    This article has made me pissy. Maybe it's because I'm enjoying my new Zaurus which allows me great flexibility as a developer. I specifically didn't choose the PokeyPC because the open Zaurus is available (and Opera, esp. Opera 6 (in beta) far surpasses PokyIE). VZN blew it for me.

    • You'll also deprive yourself of probably the most reliable cellular network in the U.S., all because Mr. Fahey, who likes to think that the articles he posts on his website are fair and nonbiased, is actually some kind of religious zealot. I can't find many statements in his story that are true...

  • I picked up an LG 5350 with the SprintPCS service, and I'd have to say I'm very happy with the phone. Although they don't advertise it the LG 5350 comes java enabled, I nice surprise after buying the phone. I've used a few freely available java apps and I've been very impressed with the quality of J2ME applications on the phone. If anyone is interested in the next-gen phone they should definitely make sure it is java-enabled (and color too!)
  • Who CARES?? (Score:4, Insightful)

    by EvilStein ( 414640 ) <spam@NOSPAM.pbp.net> on Saturday December 14, 2002 @04:25PM (#4888551)
    Speaking as a former employee of a large cellular phone company, I have one big question..

    Why the hell is everyone looking at some whiz-bang cell phone features but settling for crappy reception/range?

    Grr. I know why certain areas don't have cell towers. Not profitable, NIMBY folks, FCC regs, etc.. but what I don't get is the notion that your phone needs to be a second Game Boy. If I want to play games and crap, I'll get an actual Game Boy Advance. I use my Ericsson T68 for my address book & calendar stuff. Maybe some WAP browsing here & there. But, that's about it. I would much rather have more effort put into stability & call quality than "gee whiz!' features.
    • Re:Who CARES?? (Score:2, Interesting)

      by wozster ( 514097 )
      I care, I'm a tetris junkie and I dont want to lug around a GBA or PDA for that when I already have a very capable cell phone.
    • Reception & range is maybe a problem in the United States but in Europe or Japan, the quality of the cell phone networks is really good and most people do not need to care about that, so they pick their phones and phone providers based on other critia. Gaming seems to be feature requested by many people.

      A gameboy advanced is way too big to carry around all the day. It just doesn't make sense to carry a GBA around for 7 minutes gaming in the train or something similar. A GBA also looks like a toy for kids and many people think it is embarassing to play with it in the public. A cell phone seems to be more acceptable.
  • Full of inaccuracies (Score:3, Informative)

    by markb ( 6556 ) on Saturday December 14, 2002 @04:45PM (#4888624) Journal
    I wrote the following email to the author of the article:

    Colin,

    I just read your article at http://www.colinfahey.com/2002dec14_j2me_cell_phon e/j2me_phone_apps.htm. You state some things about BREW that are simply untrue:

    The BREW version of the ARM compiler required to develop code for your own phone costs $1,500.
    This one is true, but work is being done to solve this problem. You should soon be able to use GCC.

    No application (even those you download yourself via a data cable) can survive on your phone for more than three months, at which time you need a new "signature" from QUALCOMM.
    Test signatures expire after three months. A real signature, which is required to in order to make your app available via a carrier, does not have this limitation.

    If you are developing an application for a BREW phone, you must submit all source code, original and compiled art assets, and documentation to QUALCOMM -- just to get a "signature".
    You are absolutely not required to submit source code for anything. You must submit your *binaries* for testing in order to have them signed. You do not need to submit any part of your application to acquire a test signature.

    Once you develop an application or even simple resources like "desktop wallpaper" or "ringer tunes", you need a closed technology called "Get It Now" (a service of QUALCOMM, not the carrier) for people to download your creations (for a fee).
    Get It Now is Verizon's brand name for BREW. In order to make your app available, you need to have it tested and signed. You then submit the app to Qualcomm, which makes the app available to carriers. The carriers then choose which apps they want to carry.

    I hope you will correct these mistakes in your article. Thanks.

    -Mark
    • You must submit...

      From my reading of your "refuation", none of what he says is incorrect, and you put it very plainly:
      You Must Submit

      Thanks for clearing that up. Java may not be an ECMA standard, but at least I don't have to submit my binaries to for "approval".
      • From my reading of your "refuation", none of what he says is incorrect


        Um, what are you talking about? I listed the errors point by point. Yes, you do have to submit your app if you want to make it available through carriers. No, there is no other practical way to share your app. If you don't like that, that's your opinion. But the article states several things that are just plain untrue.
        • You just don't get it, do you? Do you think the web would have succeeded in its early days if it had required proprietary and expensive tools and signed deployment modules? There were any number of such schemes pre-HTTP/HTML but they all failed because the barriers to entry were too large. It took non-obfuscated HTML code and open sourced servers to create the impetus for our current boom in distributed systems. Creating a similar boom in distributed mobile applications will require a similar open access paradigm.
          • Are you running my messages through some sort of translator or something? Can you quote one thing in my message that you disagree with?
    • Get It Now is Verizon's brand name for BREW. In order to make your app available, you need to have it tested and signed. You then submit the app to Qualcomm, which makes the app available to carriers. The carriers then choose which apps they want to carry.

      What a mess. It's much simpler when everybody can simply put applications on their web site so other people could download them. The carriers don't get royalties this way, but on the other hand, a lot of geeks would buy the phones if that J2ME thingie picks up.
      • I really depends on your point of view. For a developer that wants to sell apps, this system works very well. For a developer who wants to create free software, this is not the right arrangement, nor is it the right arrangement for the hobbiest. Maybe in the future BREW will be improved to include the best of both worlds.
        • Yeah, look at it this way - BREW guarantees that authors get compensated for their work and, in the case of Verizon, that nothing damaging gets uploaded to the phone.

          Of course I know the theory behind J2ME and Java in general is that everything runs in a sandbox, but someone can still in theory write malicious J2ME code and unleash it on others. BREW checks everything before it goes through.

          But with BREW the final author gets compensated. If you're Joe Hobbyist this is unimportant but if you're EA (they already have a version of Tiger Woods for the Verizon phones), this is important. No piracy, and people are more likely to buy something if it's just $5 or $6 on their monthly bill (games are a one-time download for a one-time fee).

          Plus, BREW development is done in C/C++, which is nice if you already know or prefer C/C++.

          This is a good article to point out something - that BREW isn't for hobbyists. However not everyone is interested in free-as-in-anything. Some people want to (and deserve to) get paid. And more people will buy BREW games from Get It Now through Verizon (especially now that they have an actual Two Towers game and an EverQuest game on the way) than will ever type in a URL on a web browser.

          So I disagree with BREW being "bad for consumers" - it's only bad in the same way that downloading ringtones for $2 a pop is bad. And if no one uses it it will go away. If it doesn't go away it might be a good way to get paid for your work in a world of piracy.

    • The author has already updated his article to take into account my criticisms. I thank him for that.
  • You could have saved yourself some hassle installing all the different toolkits. Just download [sun.com] Sun ONE Studio 4 update 1, Mobile Edition, its completely free (as in beer), and is a great integrated development environment (about 20MB download). All the tools, emulators and demos from the article are bundled. Since last week I'm running it under RH Linux 7.2, with 512mb of ram (YOU NEED LOTS OF RAM!!!). Took just one minute [sun.com] from skipping the regestration screen to stepping through the worm game in the debugger (I always love the game worm/snake/nibbles in all its incarnations, and the demo version provided is beautifully programmed - simple but object-oriented and multi-threaded in a tiny amount of code).
    • has anyone been able to download this? I have tried with various browsers/download managers and it seems like the files just don't exist (for all platforms..)

      Thanks
      • You need to register to download. Supported platforms: Linux, Windows, Solaris. From the sun download faq [sun.com]:

        "Because of the way our download service handles session management, you cannot resume partial downloads by clicking on the link again in the browser window. Rather, open the download manager program you are using, and resume the download from within the download manager itself.

        We continue working with our engineers to enable support for more download managers on more platforms. For now, however, please turn off any other download managers and utilities if you are having download problems."

        Downloading big files from sun under linux has been really difficult for about a year now. The only download manager until recently i had been able to get to work was DAP under windows (warning: Spyware). Basically most download managers (prozgui, getright, opera) won't be able to deal with Sun's bullshit. Ludicrously rather than fix their website to just work, Sun have written their own download manager [sun.com]. Its written in java, and its only tiny 140KB! The surprising thing is that this is a really excellent download manager , tiny footprint, no browser hijacking, no adware/spyware, works under any OS, automatic file verification, automatic unzips, and solid as a rock
  • by KagakuNinja ( 236659 ) on Saturday December 14, 2002 @05:28PM (#4888821)
    First off, if you are serious about developing for J2ME, you should get the Sun WTK (which is free), or perhaps the JBuilder personal edition + MobileSet (also free).

    Creating JARs and JADs by hand is a pain in the ass. One should build with ant, and use a JAR creation task such as JADCreator or the tool from Stampy soft (whose name escapes me at the moment). JBuilder Professional will also build JARs for you.

    Moving on to the T720; it has problems. Networking is seriously screwed, and there are reports among developers of bugs such as: your JAR not working if the size is an even multiple of 100 bytes. While it is cool that you can do OTA downloading, the real deal is to load apps via the serial cable using Midway. Unfortunatly, the only way to do this is to be a developer, and convince Motorola to flash your phone with the correct ROM version. It also blows that you cannot view output from the phone via the serial cable using Hyperterminal; the i95CL does allow this, which is vital for debugging on the actual device.

    Lastly, the Brew issue: development companies love the very things the author despises (well, not the $1500 for the dev kit). If you are shipping product on J2ME, and actually plan on making money, you have to deal with the complete lack of adequate billing solutions (and each carrier does things differently, and has a volumnious documentation describing what you need to do to work with them). Brew takes care of this for you, which is a big plus.
  • Balanced appraisal (Score:5, Informative)

    by Anonymous Coward on Saturday December 14, 2002 @07:47PM (#4889420)
    There are important reasons for the differences between BREW and J2ME, and BREW solves many problems that J2ME does not. As others have said, some of these are extremely important to carriers and professional software development companies:

    - J2ME performance is very slow compared to BREW native code

    - Most J2ME implementations are also very limited in total code size in the JAR, and available heap space to work with at runtime. It's a bit frustrating, b/c the current limits are typically just below the threshold for "toy app". If they were even 2-3x what they are now certain types of more complex apps would become possible, but I expect the next release of J2ME to increase the JAR and heap limitations significantly, so this is more of a temporary gripe.

    - There are significant limitations in the current J2ME APIs that restrict multimedia capabilities. E.g., can't create a new Image out of an array of pixel values, so you're left with blitting around bitmaps loaded from the jar or the net. This means no 3d graphics, among other things

    - J2ME implementations change from phone to phone, many manufacturers add custom multimedia extensions to get around the restriction above, but this makes it hard to build certain types of apps and deploy widely (often a business relationship is required w/ the phone manufacturer or carrier to get access to their extended APIs.)

    - There is no standard download model for J2ME (this is very important to carriers)

    - There is no standard billing model for J2ME. This is extremely important for carriers and software producers, and is one of the main reasons for Qualcomm's centralized control of the certification process, and the download/billing infrastructure. It is proprietary, but provides many important things (billing, versioning, test-downloads for free that expire, etc.) that in the J2ME world keep getting reinvented for each separate carrier, if they get implemented at all.

    - I know that paying for apps is not as "nice" as free downloadable applets, but it's the only thing that creates a real market of real apps. How many companies are selling java applets that run inside web browsers? How many java applets do you download and use from the web, in your day-to-day computer usage? NTT DoCoMo implemented their own custom certification and billing process for their version of J2ME called "i-Mode", and it led to the incredible explosion of the cell phone market there. You pay incremental monthly billing charges for your apps, but it has driven the "coolest" market for phone technology in the world, both for cell phone software and hardwrae. It is fun and cheap to have really cool stuff on your phone in Japan, because companies can make a lot of money with small billing charges in a mass market.

    - In a certain sense, BREW can be thought of as trying to replicate the market and business model of NTT DoCoMo, but using their own custom native-code platform instead of J2ME. The carrier gets a small cut (~10%), Qualcomm gets a small cut (~10%), and the developer gets most of the money (~80%). I believe these numbers change some from carrier to carrier. But this type of billing market I believe is necessary to duplicate the kind of explosion that happened in Japan.

    On the flip side, I concede what I think are some of the major points in the author's article:

    - BREW is proprietary, controlled by Qualcomm. There are pluses and minuses to this, I'm not looking to start a religious war. Personally, I prefer open-source standards. Business-wise, it has been very helpful for companies that Qualcomm controls the BREW standard and the software infrastructure that supports the business model.

    - The development tools are harder to come by. Either pay $1500 for ARM tools, or do some extra legwork to get GCC to compile correctly for BREW apps. There is no widespread community for support yet, outside the companies who have started developing for BREW.

    - You can't upload your own code to the phone outside of the Qualcomm/carrier download model, and the certification process typically costs in the low $1000s of dollars per app, so this completely closes out the geek hobbyist development market. This is very lame. I'm not buying a cell phone until I can: 1) develop in native code for it, 2) upload the code to the phone on my own.

    Some things in the argument were overstated or perhaps misunderstood:

    - You don't have to submit source code for your application. In the case of a library (not app), you have to submit the source code for a unit-test program that exercises the functionality of your library in all of the various use-cases.

    I develop both for BREW and J2ME, native-code is very important to me for application speed (multimedia, 3d). I have been very happy with BREW as a platform and have found it better to work with than J2ME in almost every regard. However, it is too closed and expensive for hobbyist at-home use, a major downside, and not an option for open-source development. Also, there is some chance that the next few revs of J2ME will fix many of its current drawbacks and the terms of this debate will be reversed.
    • by markb ( 6556 )
      This is a very intelligent post. There is one thing I disagree with:
      BREW is proprietary, controlled by Qualcomm. There are pluses and minuses to this, I'm not looking to start a religious war. Personally, I prefer open-source standards. Business-wise, it has been very helpful for companies that Qualcomm controls the BREW standard and the software infrastructure that supports the business model.


      Java is almost as proprietary as BREW. If you want to make you're own runtime environment for Java, you either have to pay a license fee, or jump through some hoops to keep you developers away from the click-through license on Sun's SDK. I believe that in order to be on the standards group for Java, you have to sign a non-compete agreement. Sun would like us to believe that Java is open, but I disagree.
  • I've now decided which cell phone I will be getting after christmas. Well, not that particular model, but I will be using a J2ME phone, and not another platform. Makes more sense since I know Java already, yes?
  • Its funny that this was posted now. I'm a software engineer for Motorola. We just had "Motocoder" day this week. They had a bunch of presentations about how "the customer" can develop BREW and J2ME apps for our phones.

    I didn't go because I hate Java and I'm not really a fan of the T720 either. I'd rather that you went out and bought my product -- a C33x [motorola.com] from Cingular or T-Mobile. It doesn't have J2ME yet, though. But, that's one of the reasons it isn't so expensive...

    Anyway, if you were interested, you could check out Motorola's official information [motorola.com] about developing apps.
  • Sprint PCS [sprintpcs.com] seems to be the first to offer an unlimited data transfer plan (PCS Vision).

    Yes, that's unlimited data transfer. Download all the apps you want, run network-enabled J2ME apps, browse the web, as long as you want! This is significant because it raises the incentive for running these phone based apps.

    What's interesting is that they're marketing a distinction between their voice and data services - other providers, AT&T, Verizon, TMobile, etc. don't make as clear of a distinction between the two, nor are they setting themselves up to be viewed as a wireless *information* provider, rather than traditional wireless voice services.

    I can't wait to trade in my phone for a Samsung A500 or an LG5350. :)

    No, I'm not a sprint employee. I was just blown away with the possibilities presented by unlimited wireless data services! :)

    • browse the web, as long as you want!

      You make it sound like surfing with the browswer on your phone is a fun activity. I don't know about you, but I cringe every time I fire that thing up. Its slow as hell, and there's no good pr0n! The only thing that I've found it useful for is stock quotes, weather info, and movie listings -- and that stuff only takes seconds to look up. Its worthless for serious surfing.
  • With all the developers and programmrs that subscribe to slashdot i was hoping someone would develop an application that would aalow u to install J2ME on Brew phones...
  • The Wireless Toolkit from Sun here [sun.com]. I use it and it's pretty cool, and there's a version for Linux and Solaris also. It bundles the MIDP and CLDC packages referenced in this article. It makes the whole .jad and MANIFEST file management a snap. And it's also free!
  • Does anyone know if J2ME supports sound? And if so does this phone's implementation? By some strange coincidence I just bought one of these phones yesterday. Got the T720e (European? Enhanced?) on Orange which is set up for J2ME. Anyway the point being all the games I've tried are silent. This makes the sense from the "not annoying the heck out of other people" perspective, but I might want sound for my own pleasure:-)
  • I just updated my J2ME web page with more images, better formatting, clarifications, and a new section: "RESPONSE TO FEEDBACK REGARDING THIS PAGE" (I give my opinions on some of the major issues raised in this thread).

    I liked the post "Someone give him a coconut" regarding my amazing discovery that using a cell phone gives you freedom to be mobile! I also liked the observation that the ability to be called at any time is not necessarily a "freedom". "I Galactus Laugh at you puny earthling," is just what I wanted to hear! "(Score: 0)", pretty harsh! I bet Galactus isn't feeling the love here. (Ms. Cleo voice:) "I'm seein' intergalactic invasion possibly, by the Moon card!"

    When I discovered that my obscure post to a mailing list got promoted to a discussion thread on Slashdot, I felt a little bit guilty for presenting such a specific and brief cell phone programming experience. But to be honest I was only really interested in presenting a kind of "proof of concept" for complete newbies. Showing an actual popular cell phone model, and the exact steps I took, may make the concept very real for people. Frankly I was confused by all of the development software and the wacky error messages on my cell phone before I got everything to work.

    Thanks for the nice feedback. I'm glad something I worked on appealed to other people.

Don't panic.

Working...