I have developed an PhoneGap application using Sencha Touch 2 in Android. Now I want to develop the same in iOS without changing the code. I tried using PhoneGap Build but it wa
If your app really is just a straight PhoneGap app -- all HTML, JavaScript, etc. and no custom Objective-C stuff, phonegap.com offers a build service that'll build your app for all the platforms they support. You'll still have to register as an iOS developer and pay you $99 to get a distribution certificate, of course. According to the iOS Build instructions you'll need a Mac to set up your certificate and such. So realistically, you'll need to at least have access to a Mac from time to time, but once you've got everything set up you should be able to use the service to do your builds.
SenchaTouch 2 incorporates directly building native Android and iPhone apps with the (still in beta) SenchaTouch SDK Tools using a Windows, Mac or Linux PC. I am doing this on Windows XP and 7.
After setting up your (paid) developer account with Apple, creating a developer certificate and setting up a PKCS#12 key-store(*) on your PC, you set up a packager.json targeting iOS and use:
> sencha app build native
[INFO] Deploying your application to <your-app-path-here>\build\package
[INFO] Copied sdk/sencha-touch.js
[INFO] Copied app.js
[INFO] Copied resources/css/app.css
[INFO] Copied resources/images
[INFO] Copied resources/icons
[INFO] Copied resources/startup
[INFO] Resolving your application dependencies (file:///<your-app-path-here>/index.html)
[INFO] Found 236 dependencies. Concatenating all into '<your-app-path-here>\build\package\app.js'
[INFO] Processed sdk/sencha-touch.js
[INFO] Minifying sdk/sencha-touch.js
[INFO] Processed app.js
[INFO] Minifying app.js
[INFO] Minifying resources/css/app.css
[INFO] Minified sdk/sencha-touch.js
[INFO] Minified app.js
[INFO] Minified resources/css/app.css
[INFO] Generated app.json
[INFO] Embedded microloader into index.html
[INFO] Packaging your application as a native app...
[INFO] The application was successfully packaged
The application was successfully signed
To run iOS simulator you need to use Mac OS X
to make the iOS application (which will be output as a folder named build\MyApp.app
).
(*) Use Portecle to maintain your key-store.