New: mobile application relay

The problem with building mobile apps is that it really is the wild west of technology right now. Much like web browsers in the 1990s everything is still platform-dependent. The usefulness and long term stability is also a problem in that no one knows if any mobile device manufacturer will drastically overhaul their systems in the future. Mobile device manufacturers are still in competition and so the notion of establishing a standard or convention is out of the question. If you go to Amazon and read the reviews you’ll discover that just about every book on iPhone development is replete with errors. Publishers themselves are in such a rush to capitalize on this boom town that they have foregone all proofreading and developers who have figured it out, like the prospectors of old, aren’t talking.

With the relationship of Adobe and Apple corporations existing somewhere between unpredictable and hostile no company should rely upon the availability of Adobe’s Packager for CS5 when considering the creation of an iPhone or iPad application. Apple desperately needs to make their Objective-C language acceptable to programmers, yet continues to have a hard time promoting it. Their only recourse has been to strong-arm the submission process. Several times within the last two years Apple has placed bans on Flash-generated IPAs (iPhone applications) then loosened those restrictions shortly thereafter. No one knows at any given point if a non-Objective-C application will be accepted by the App Store. In other words, the process of building an iPhone application is a big investment followed by a gamble. Developing mobile apps for Android or Blackberry is actually harder as they are still steeped in hardcore Java development, and so the progenitors of app development for those devices have built their libraries around Eclipse, which is probably the least intuitive IDE ever created.

Mobile App Relay

Mobile App Relay

This is where (the now defunct) Dashcode and frameworks such as PhoneGap and Appcelerator have come in. With Appcelerator you write an application using JavaScript and a heavy understanding of the target mobile device’s API. The IDE then translates that JavaScript into either iPhone, iPad or Blackberry code. With PhoneGap you build a webpage or pages and launch them from a pre-built container. PhoneGap has produced containers for iPhone, iPad, Blackberry, Android, Windows Mobile and a number of others. The PhoneGap route is obviously the better solution, however, updating such a container mobile app is still problematic for a number of digital media agencies and such.

And so I’ve created a mobile application relay service. My mobile app relay allows me to build web-based smartphone apps for my clients and provides me with the ability to more effectively deploy updates without going through the lengthy Apple submission process or recompiling. The only thing right now which is hard-coded are the app icons and splash screens… Although I believe I may be able to update those remotely as well.

Since my system relays requests through a web server the target files could be anywhere thereby allowing clients to host and ultimately take over their own apps. It is essentially an MVC way of looking at how apps get built, deployed and used; the app is the view, the relay service is the controller, and the hosting server is the model.

Got questions? Send me an email.