views:

138

answers:

1

What is the best OS, framework / library and Bluetooth stack for programming advanced mobile applications utilizing things like Bluetooth OBEX (OOP, DID, HID), IrDA (for remote-controlling consumer electronics), VGA-cam (as a movement sensor) as well as access to local databases or CSV-fles?

What are the trade-offs between the OS (PalmOS, Symbian, Windows Mobile, Android, BlackBerry, iPhone, Brew, Savaje, Montavista)?

What are the trade-offs between the different BT stacks (Windows, Widcomm, Soleil, Toshiba)?

What are the trade-offs between javax.obex, Brecham.Obex and others?

What would be the most flexible and powerful combination of OS + Bluetooth stack + OBEX library?

+1  A: 

I can only speak to iPhone vs. Android, since I'm only intimately familiar with those two.

Programming Language: Android. With Android comes the benefit of working in Java, and Java is almost as nice a language as you can get. With the iPhone you are stuck with Objective-C, which I cannot like no matter how hard I try. Every time I try I feel like I'm beating myself over the head with a 2x4.

Multitasking: Android. Android has one big feature over the iPhone in that you can set background tasks to run. This allows for pseudo-realtime applications like instant messengers to run even while you're playing that nifty new game. The iPhone does not allow this; if you want your instant messages, you have to run your instant messenger, to the exclusion of all other applications.

Interface: iPhone. Android's user interface seems to try too hard and frequently gets in the way, IMO.

Market share: iPhone, hands down. Everyone owns one. Or seems to.

Bottom line: I'd rather write for the Android, but I'd rather use an iPhone.

Randolpho
That is so funny. I hate Java, not matter how much I try not to. I feel it is nowhere as nice a language as you can get. I enjoy Objective-C much more, probably due to its simplicity.
Erich Mirabal
Heh. Po-tay-to/po-tah-to.
Randolpho