top | item 8259069

(no title)

sudont | 11 years ago

Curious to see how this works out, with JS being the native way to write applications. Been excited about the Firefox platform because of this for a while (especially for POS/embedded/tablet applications), but I'm developing a cross-platform app for both iOS and Android in Ionic, and I'm much less interested in PhoneGap now that I've actually done something with it. (I'm a big proponent of Angular at work, it's not that part.)

I think I was able to get about 40% of the way there in about five hours in Cocoa, the only real stumbling block was dealing with ViewControllers and UITableViews. Unfortunately for non-native platforms, if PhoneGap is positioned as a good starter for low-barrier apps, it doesn't bode well if a developer can go in fresh and with about the same amount of effort build one platform in whole, and about 20% of another...

discuss

order

declan|11 years ago

I spent some time (>18 months ago) testing PhoneGap for potential use with what would become http://recent.io/, but PhoneGap was too slow on actual devices to be usable. Launching a "Hello, world" app took something like 30 seconds on an iPhone 3GS. Maybe hardware speed increases have helped to fix that problem.

I haven't tested Ionic, though the Creator utility looks promising. Do you have any experience in how well Ionic interfaces with native APIs, like Twitter/Facebook on iOS and sharing on Android? And how do Ionic-built HTML apps perform in terms of speed?

sudont|11 years ago

Creator does look great, but so does Interface Builder. IB has caused me to leave the computer in a state of shock from frustration, so I'll have to reserve judgement.

Performance is fairly good. I get around 5 seconds on a 4s, and about 8 on a Nexus S, though I haven't tested with recent code on the Android Phone. The only native API I've used has so far been push notifications. While there's a plugin for that, it works as a pretty thin bridge between native code, and a couple of dispatch functions that use stringByEvaluatingJavaScriptFromString. I've had to fix things, so it means having to understand Cocoa code anyway.

There are also some visual issues with the code, in that the view will save its state if the user uses a route in a view to change the current view. Normally this would help, but if it frequently updates the view changes back and then it flickers.

Overall it's ok if you really love web tech, but I'm learning native iOS development in response to my experience.

plainOldText|11 years ago

I'm currently developing an app with the ionic framework and I'm quite pleased with the overall performance (both Android and iOS) and the UI boilerplate it provides. I haven't developed anything super advanced yet, but so far so good.