Before we started coding, we considered the (pretty cool!) PhoneGap system, but not Appcelerator (which we just reasoned as being similar to PhoneGap) or MonoTouch for that matter.
PhoneGap was considered initially because of course it would be cross platform (write the mobile game once, let it work on both Android and iPhone, plus Windows phone, etc), but we didn't want a less-than-optimal game play experience from a UI perspective.
We felt that it would be less than ideal to play due to the transition animations between screens not performing perfectly (like native apps do) on iPhone, and Android at the time seemed similar (not every phone we tried had perfect HTML5 CSS support etc for animations/rotations).
We then thought that you could tell (from little things like scrolling the window) that the app wasn't native, and it distracted slightly from the game play experience.
It's probably a silly reason, but I'm glad we decided to just write the game native on both platforms after-all, because I got to learn Objective-C and write an iPhone app (and play with Android development), while my friend got to hone his Android app skills.
Considering the game play logic was in the web server, a lot of the heavy lifting was done for us.
Had we decided to put the game play code on the mobile client itself, I'm sure we would have had to re-visit PhoneGap (and implement the game in JavaScript), as we'd certainly not want to write the game play logic twice.
Thanks for the detailed answer :) I had similar concerns about performance and compatibility. I'm not too keen on learning and maintaining code for two separate platforms, though, so I may end up just sucking up the differences so that I can get something launched!
PhoneGap was considered initially because of course it would be cross platform (write the mobile game once, let it work on both Android and iPhone, plus Windows phone, etc), but we didn't want a less-than-optimal game play experience from a UI perspective.
We felt that it would be less than ideal to play due to the transition animations between screens not performing perfectly (like native apps do) on iPhone, and Android at the time seemed similar (not every phone we tried had perfect HTML5 CSS support etc for animations/rotations).
We then thought that you could tell (from little things like scrolling the window) that the app wasn't native, and it distracted slightly from the game play experience.
It's probably a silly reason, but I'm glad we decided to just write the game native on both platforms after-all, because I got to learn Objective-C and write an iPhone app (and play with Android development), while my friend got to hone his Android app skills.
Considering the game play logic was in the web server, a lot of the heavy lifting was done for us.
Had we decided to put the game play code on the mobile client itself, I'm sure we would have had to re-visit PhoneGap (and implement the game in JavaScript), as we'd certainly not want to write the game play logic twice.