Open J2ME Development Options?
loganb asks: "I'm currently holding in my hand a brand new Samsung A900 cell phone with a brand new EVDO data plan. I was initially excited about the OSS/free application development possibilities, as the J2ME stack on this phone supports the new Media, Location, and Messaging APIs. Much to my dismay, however, Sprint (my carrier) locks all the interesting APIs up tighter than a drum, and makes it nearly impossible to get an app to market. You need a $400/yr Verisign certificate just to download an app to a developer-enabled phone and you need a contract with Sprint to receive the certificate necessary to distribute the app (solely through Sprint's online store) to regular users. Of course that is not really an option for free/OSS programs, 'vertical' applications, or anything that doesn't neatly fit into Sprint's business plan. Thus, do any of the other national domestic cell providers allow unfettered access to the Java APIs on their phones? Is there any sort of hackery (such as buying an unlocked phone from Europe and using it on a domestic GSM network) that has an equivalent result?"
if you got the thing less than 14 days ago. The law gives you 14 days to cancel if you don't like your service. As for unlocked phones, you don't have to import one from Europe, amazon sells them, as do a lot of other places.
Personally i would recommend T-mobile(since they are actually a European company!) and have fun!
Monstar L
plain and simple buy an unlocked gsm phone and buy a sim card
dont put up with suppliers that will not allow you to run your app's you should at least be able to download your app to the phone via a usb cable
the location and photo API's do seem very fun I have not tried them out and wonder how much is cross platform...
regards
John Jones
try getting a Nokia 6265i or Siemens S65
both have the location API how well it works I do not know anyone know ?
regards
John Jones
Things might've changed since the merger with Nextel, but AFAIK there's nothing keeping you from distributing unsigned Java apps from your own company website. The user's phone will pop up a warning, of course, but it won't stop him/her from downloading and installing your app. Assuming you know all about JAD files and MIDlets, just point the user at the JAD file.
My biggest beef with Sprint is their crappy API support, at least on their older phones (my Sanyo PM-8200 supports only MIDP-1.0, and very few of the optional J2ME APIs).
Range Voting: preference intensity matters
Sprint is an unusual case in that they use use J2ME for mobile applications on a CDMA network. Most network operators using CDMA use Qualcomm's BREW application environment. So you have less choice among handsets for J2ME software development if you choose the Sprint network.
There is nothing second-rate about Sprint's handsets, but they may not be the best choice for individual developers getting into J2ME development.
In my experience, Nokia, Motorola, and SonyEricsson have well-documented J2ME implementations. In the U.S., you can use GSM handsets from these manufacturers on the Cingular or T-Mobile networks.
The price of signatures is unfortunate. You should check both the handset manufacturer's and network operator's policies before making your choice.
Good luck!
I wrote parts of this stuff
Google for unlocking software. There are companies that unlock phones for $15, too.
T-Mobile unlocks phones for you without charge after 3 months of using their pay-as-you-go service.
--
Before, Saddam got Iraq oil profits & paid part to kill Iraqis. Now a few Americans share Iraq oil profits, & U.S. taxpayers pay to kill Iraqis. Improvement?
It's my experience, after working on a mobile-phone app that uses SMS, that phone companies are paranoid control freaks.
Some companies won't allow certain kinds of applications on their networks; for example, Verizon won't allow any applications where users can meet other users. Some companies won't allow any applications where users can chat (say, via WAP or SMS) with other users unless the chats are moderated. BY A PERSON. Some companies require that, if you plan to advertise your application, and your adviertising budget is over a certain ammount, you must disclose to the carrier your entire advertising budget and campaign.
Frankly I'm not surprised that Sprint doesn't want you writing software for their phones unless you pay them big bucks. Telcos are almost worse than banks when it comes to new ideas (or software).
I can't wait for the one telco that gets it right, and provides an environment where creativity can reign free; someone will develop a kick-ass application for that carrier's phones, everyone will flock to them, and the other carriers will finally get a clue.
I understand that in most European countries the situation is very different. In Norway, I hear, you can basically write/distribute any app for a phone, and the telcos only bother you if they get complaints about you. That's what I'd like to see in North America.
If telcos had invented the Internet... well, it'd be AOL.
I've got this phone and I, too, would like to unlock some features. Namely the use of USB for anything besides mp3-player songs, images, and vcards. In order to place ringtones on the phone you must upload it to the internet and then redownload it to the phone. The phone comes with a USB cable and supports the mass storage device protocol, but is crippled. ARGH!
A few of us keep saying users and developers should be concerned about things like Palladium and so called trusted computing. This is an example of the real-world effects. Today cell phones, tomorrow PCs.
Sprintusers has a utility for uploading your own applications, as well as a quite active userbase doing everything from development to featue discussions. Try your questions there, and utilize their utilities for uploading images, applications, and more to your phone, if you want. Just a huge forum board, nothing more.
http://www.blackberry.com/developers/downloads/jde /index.shtml
As stated above, there are plenty of uploaders out there that will allow you to upload your own programs. http://rumkin.com/tools/sprint/ is an uploader that will allow you to upload your own code (works with the A900...I've got one too). http://www.sprintusers.com/forum/ is the forum mentioned above that have a lot of Sprint phone user geeks...I'm sure a lot of people on there could help answer your questions. Here's a link to their page for alternate uploaders too: http://www.sprintusers.com/forum/showthread.php?t= 83030
= 52772&page=1&pp=15 what you are talking about regarding the Verisign cert. You can run your own code, but to access the GPS stuff you are restricted. Hopefully someone in the above forums can help you out to bypass it. I'll keep an eye out, because that sounds like some pretty cool hacking to do.
Additionally, http://www.howardforums.com/ has a lot of good information too. Here's an actual http://sprintdevelopers.com/ Sprint-centric development site too.
Although, most of this may be useless, because I see in this post http://www.sprintusers.com/forum/showthread.php?t
For most phones from most providers, there are techniques available (Google for them) which allow you to re-flash your phone with firmware which is not completely locked up by the carrier. The manufacturer provides a full suite of features, then builds custom firmware for each carrier, basically subtracting features from the overall set.
I encountered this problem with SonyEricsson phones (first a K700, now K750), which were Vodafone branded, and wouldn't play the custom MP3 files I'd created to use as ringtones. I reflashed the phones, and voila, they play. Vodafone doesn't lock down the OS, however, so whatever J2ME programs I write I can install and use on my phone.
I think you may want to take a look at a new carrier.
Well, you missed the deadline for making comments to the "Exemption to Prohibition on Circumvention of Copyright Protection Systems for Access Control Technologies" proceedings that the Copyright Office is conducting. Too bad. I'm sure your comments on this issue would have been more useful than mine were.
Perhaps you could still contact the Stanford Center for Internet and Society folks who were spearheading an effort to collect comments on cell phone locking and they could use your comments as an addendum or something.
Shout out to Lessig for his blog entry that pointed these folks out to me.
Signatures are a waste of bandwi (buffering...)
If you ask me, its not worth it. People still have the ability to access other websites, so it becomse a matter of informing them about your software. I have a Treo 650 and just about no one goes through Sprint to download new software.
1;
Several folks pointed out that you could get the midlet (the term for the type of app sprint runs) on the phone by hosting it yourself or downloading via a cable, and bypassing Sprint's site and the need for a developer's certificate.
They are correct, but they are also missing part of the story.
They part they are missing is: in order to use some of the APIs on the phone, your midlet must be "blessed" by the operator. Technically it has to say the protected features it wants access to and be signed by the manufacturer or operator. All this is covered in the MIDP2.0 (JSR-118) spec. I was a member of the committee that wrote that spec.
So, if you want to write a local game you don't need any of that magic: you can do everything you want via the "untrusted" (that is: unsigned) profile. But to do some of the more advanced features (like using GPS data, or being able to be woken up when not running - push registry) you have to be signed by the manufacturer or operator.
Anyone who's read to this point will probably have noticed that the folks who make the phone or sell the phone (manufacturer or operator) are able to bless applications, but the folks who bought the phone cannot. This wasn't an accident.
When the committee was working out the details of the protection model manufacturers and operators were well represented. The only third party developers present were companies that were beholden to operators. There were no end users or corporations represented, so their interests didn't get a lot of weight.
I don't think it was evil intent by any of the parties. Its just that went these standard committees meet each representitive makes sure their interests are protected, and those who aren't present don't get a voice. This is a very common problem for most standard committees; its not unique to the JCP or MIDP. But it does help to explain why you, an 3rd party developer is a second class citizen even for your own phone, let alone your customer's phones.
TO BUY A NEW CAR WOULD MAKE YOU SEXUALLY ATTRACTIVE.
I got a Motorola V220. The V-series is very hackable. In fact, even though it's not supposed to work, I can upload Java games directly from my Mac using some open source software (moto4lin). It's much simpler than the official way Motorola wants you to do it. I can even "backup" any Java apps I choose to purchase.
.jar file, reboot the phone and I'm running on the device. About the only thing missing is local testing of Motorola-specific APIs but so far I've just avoided them. If could always fire up a Windows box to run the Motorola emulator on.
I do my J2ME compiles against the Motorola SDK (I had to borrow a Windows machine to get the jars) using mpowerplayer for the preverify/local testing. Then I just upload the
I'm not so concerned about other people being able to access Java apps that I write so I haven't even thought about that part. My operator (Virgin Mobile) doesn't even let me connect to the internet (just to their site, which has nothing useful that doesn't cost money) so even if I could setup a server that'd let people download my jars I'd have no way to test it.
I've read through the comments; I thought I would put in my 2 cents.
Knowing what comes next, it is not worth that much.
Several folks pointed out that you could get the midlet (the term for the type of app sprint runs) on the phone by hosting it yourself or downloading via a cable, and bypassing Sprint's site and the need for a developer's certificate.
This probably already does or will in the near future be illegal. Because people like you advocate a terrorist government run by people crushing corporate juggernauts, "getting around" protections will land us all in jail. It is strange that you see nothing wrong with the first steps in this direction. I'm a big capitalist and a gun owner, and people like you want to enslave me starting with my phone, then taking my gun, then throwing me in jail for misusing my telephone.
They are correct, but they are also missing part of the story.
You are missing that you blindly advocate companies having secret sauce that could kill you. DWIs are decided by machines with closed source code. With people like you at the wheel you would mix Judge Dredd and the Termintor T-1000 into the same being, close the source code. In order to kill they would get the laws downloaded to them via signed certificate and the judged would be killed and they would never know why. This is okay with you.
They part they are missing is: in order to use some of the APIs on the phone, your midlet must be "blessed" by the operator. Technically it has to say the protected features it wants access to and be signed by the manufacturer or operator. All this is covered in the MIDP2.0 (JSR-118) spec. I was a member of the committee that wrote that spec.
If you wrote that SPEC, fuck off and die. You god damn anti people pro corporate death. Another standard Sprint uses is sucking shit and ripping off customers and getting away with it. You are a part of that. Scum.
So, if you want to write a local game you don't need any of that magic: you can do everything you want via the "untrusted" (that is: unsigned) profile. But to do some of the more advanced features (like using GPS data, or being able to be woken up when not running - push registry) you have to be signed by the manufacturer or operator.
It is my fucking phone. I own it. If a cat sneezes on it they void the warranty, so I should at least be able to use the fucking thing.
Anyone who's read to this point will probably have noticed that the folks who make the phone or sell the phone (manufacturer or operator) are able to bless applications, but the folks who bought the phone cannot. This wasn't an accident.
Fuck you then. I hate you and the operator for sucking. I know what this is. You made living thinking its okay to charge dumb-asses for applications that should cost next to nothing or be free. The problem is, you exploitative fucking asshole, that they will borrow money and go deep into debt and become a social liability. When there are roving marauding bands of starving zombies after total economic collapse brought on by you exploitative scum, I will laugh as they tear you apart for meat for sustenance, and you will turned into the shit you are via their digestion.
When the committee was working out the details of the protection model manufacturers and operators were well represented. The only third party developers present were companies that were beholden to operators. There were no end users or corporations represented, so their interests didn't get a lot of weight.
No corporations represented? Yeah right. And this is the best, you fucking admit that you made decisions without any end user advocacy. You are the quintessential asshole of the year, and you painted yourself black.
I don't think it was evil intent by any of the parties. Its just that went these standard committees meet each representitive[SIC] { representative } makes sure their interests are protected, and those who aren't present don't get a voice. This is a
When shopping around for a mobile phone, my #1 priority was that I have control over the device, not the company. I'm fairly happy with my combination of an unlocked Nokia 6682 and a separately purchased unlimited data plan from T-Mobile. The phone itself runs the Symbian OS and supports J2ME applications as well as native ones, but most importantly lets me do whatever I want on it, without having to jump through hoops and being trapped in a walled garden that charges you $2 for a stupid GIF or a MIDI file.
In the US, you're really only going to have that degree of freedom with T-Mobile (and possibly Cingular, but their customer service is reputed to be abysmal, plus their data plans cost a fortune). All the others insist you play by their rules. If you want a flexible smartphone, though, you'll have to buy it yourself and sign up for a plan without any incentive discounts on the hardware, as T-Mobile's phone offerings are rather limited. (They used to have better ones, but they narrowed them down last year for some reason.) Be aware also that T-Mobile's network is substantially less robust in terms of coverage than some of the other providers available, though, on the plus side, it's GSM so you can take your phone internationally and have it work (though possibly at ludicrous rates, depending on specifics).
Looks like someone forgot to take his medicines this morning, hmm?
If you don't have medicines, you should get some. Seriously.
Being bitter is drinking poison and hoping someone else will die
I manage Developer Platforms and Support for Sprint so I think I may have something to add here. (Apologies for the length, but there are a lot of very valid points raised in this thread that I'd like to address.)
Preamble: My personal philosophy or Where I'm coming from or My Role At Sprint
I've posted on the general topic of openness to developers before. I've been a software developer, both as a dabbler and as an employee for both startups and established companies. I've been involved in wireless developer programs for years now, and approach my job at Sprint from the perspective of the ousider more often than from that of the insider. I know that a development platform without both good developer support and a critical mass of passionate developers is likely to end up in the cool but unused the esoteric and unusual or the abandoned bins of history.
That's a philosophy that those of us in Sprint's Developer Program share and spend a lot of time preaching within the company--without a developer community, we'd be nowhere, and without continuing to invest in making it easy to adopt our phones and network, we'll lose what we've gained.
Sprint's Approach to Developers: Dabblers, Hobbyists and Professionals
That said, the "open to everyone, information must be free, hobbyists rule" philosophy isn't necessarily one that is immediately embraced within a large wireless carrier with multiple people with different opinions that they can defend. By and large, as I've said before, wireless carriers are in a different world than that of straight operating system vendors:
What this means is that wireless carriers will pretty much always defer to developers that are likely to build real, marketable software, because ultimately those are the ones that will be able to offer those additional services.
For some carriers, the calculations above have had the end result of limiting the availability of tools and such only to "vetted" developers (using whatever criteria they deem appropriate). Other carriers have opted for more openness. While I'd love to be able to say that Sprint is better than most in this regard and that we open everything, we're not an exception to market forces or social dynamics--some tools or functions end up being limited to only some developers for various reasons. Part of what our Developer Program does is work to system
***Foucault is watching you..***