Review: AppMobi XDK brings more style than substance to iPhone, Android development
The beauty of AppMobi's slick, cloud-based IDE for building cross-platform mobile apps runs only skin deep
You'll find a number of "kitchen sink" demos that help you quickly gain traction with the XDK library. The AppMobi API is a subset of the PhoneGap API that has been tweaked to streamline some of PhoneGap's methods and enhance others. The AppMobi API adds fuller media player controls, for example.
But things soon slide downhill. The XDK provides no WYSIWIG tools for interface construction, and the onboard code editor is rudimentary at best -- you'll need to bring a third-party editor. There's no built-in debugger, either. Instead, AppMobi relies on Google Chrome's developer tools for debugging.
While AppMobi's device emulator is neat, unfortunately it's all you get. You can't connect an actual hardware device to the IDE. As a result, testing requires the installation of the separate AppMobi appLab sandbox to your devices, and it involves the convoluted process of downloading your app from the cloud repository, launching, and testing ... and redownloading, relaunching, and retesting. Testing builds quickly becomes a tedious undertaking.
Building in the AppMobi cloud
Because the entire build environment is cloud-based, there's no offline access for working with the XDK. Even compared to a tool as simple as Google's App Inventor for Android (a completely visual, drag-and-drop tool now in the hands of MIT) -- which will show updates on the connected device in real time -- this is a step backward.
On the plus side, the cloud-based build environment allows you to build for both Android and iOS devices from a single codebase, without needing to install the SDKs locally. Despite the company's claims, however, this is not a unique offering. PhoneGap provides similar cloud-based build services, and it targets more platforms than AppMobi, including Windows Phone.
The AppMobi XDK includes a wizard that does a good job of guiding developers through the build process: gathering up your assets, certificates, required plug-ins, and the like. The XDK also does a nice job of walking users through the app deployment process, particularly on the iOS side where the certification and provisioning process can be daunting. Support for application versioning is good as well.
The lack of automation is a problem. The AppMobi cloud provides a set of Web services that allow you to manage some of the build process programmatically, as well as interface with AppMobi's push messaging and live update services. But in order to tap these Web services, you'll have to develop your own scripts. There are no tools in the XDK to help you build them.
The browser-based AppMobi XDK relies too much on third-party tools such as the Chrome browser's debugger. While its emulations of native GPS and accelerometer features are eye-catching, they're no match for easy on-device testing. Unfortunately, the XDK can't attach a hardware device directly.