开发者

Future-proofing Mobile Applications

We're working on the next version of a tracking system. The previous incarnation used an LCD with a simple custom UI however as we've had usability problems and we've found development time-consuming, and as our display is going out of production, we're considering using a regular cellphone or PDA as the interface instead.

Our main worry is whether we can keep such a product on the market for five to ten years without having to continually keep porting and adapting the applicatio开发者_如何转开发n to new devices. To make things somewhat easier we intend to bundle the phones with the system, though in an ideal world our (largely non-technical) users would be able to use their own.

So, what's our best bet? Are there a good platform-independent libraries we can count on being supported for a while? Or are we better of betting on a single platform at a time? Perhaps backward-compatibility is more likely to be maintained on a PDA? Truth be told I'm not even sure what language to bet on for the generic parts of the code.

I'm also a little anxious about the link to our hardware. Bluetooth SPP is attractive since it's particularly easy to use and there are plenty of ready-made modules available, but support on the phone side is far from universal.

Any pragmatic advice would be most welcome as I must admit to having no experience with mobile application development.


If you don't control the entire production chain for hardware like Apple does for example, you have no chance on long term. Unless your product is really innovative and market wants it so much, or if you are playing on a market niche (healthcare for instance). My proposal would be to make a market study and check what your customer use as mobile devices first. You should choose one or two top platforms first, and gradually add new platforms if market asks. If you are in US probably iPhone, Android, RIM would be the top choices, in Europe I would have to choose between iPhone, Android, Symbian, Windows. It's the same like developing a website you start with two top browsers and gradually add support for minor ones.

About portable libraries I wouldn't bet on this. Instead I would design an architecture using abstraction layers. For example I would have Bluetooth abstraction layer that would expose functionalities to my Business Logic Layer; underneath I would have BlueZ if I deploy on Android/Linux, maybe GameKit for iPhone, MS stack or Widcomm for Windows and so on.

PDAs are dead, actually they've merged into smartphones and tablets, they were an evolutionary step. So forget them.

HTML5 is a good idea but is only the front layer, you must deal also business logic and lower layers.

Bluetooth SPP is good because it is common, and interoperable it's like the webservices for enterprise. Instead of giving an API that is platform dependent you could provide a set of custom AT commands, that can be used by anyone that can connect on Bluetooth to SPP.


Cross platform sounds like HTML 5, CSS and Javascript, along with some javascript frameworks for mobile development like the ones listed here

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜