How To Develop iPhone Apps on Windows

Not many developers speak Objective C, the Mantra for writing iPhone applications. And majority of the developers don’t own Mac either, so what is the way to go ?

Of course one can buy a macbook and do it. Here’s what will make it possible do all that on Windows, Linux

Top 5 Ways:

Method 5. Toolchains: There are several toolchains available (like winChain) that actually lets you write and build iPhone applications on windows. There are several associated tutorials to build the Objective C code on Windows. But there is a problem, the apps hence developed will work on Jailbroken iPhones only. We’ve seen few hacks to get over that and make it to App Store, but as Apple keeps on updating SDKs, toolchains need regular updates. It’s a hassle to make it up all the time. That’s why this is the least of the recommended methods.

Method 4. Use other Languages instead of Objective-C

(i) Code in Java: For Java developers, there is a workaround: XMLVM.

XMLVM is an extensible cross-compiler toolchain which instead of cross-compiling on a source code level, XMLVM cross-compiles byte code instructions from Sun’s Java virtual machine and Microsoft‘s Common Language Runtime (CLR). And the Result: The byte code instructions are easier to cross-compile and the difficult parsing of a high-level programming language is left to a regular compiler and you get to write apps in different language and then compile and convert to a different one. The diagram below shows an abstract idea:

Without laying much stress on it, I`ll share my experience. The project is a great piece of Innovation but is still in it’s early phases. On one side, I was able to use their API and develop fairly well application (Simple game, Travel app), but when it comes to complex graphics, features, this method looked pretty immature. However, over time this should change and we could see the project doing almost everything the original SDK does. And yes, you can test your apps on the Java based simulator and deploy on jailbroken iPhone.

There are several other frameworks (like  Appcelerator`s Titanium) that let you code iPhone apps in Java, but the limitations are similar thought they are all worth giving a look for most day-to-day apps.

Update: (ii): Code in C/C++

DragonFireSDK: Say no to Objective C, say no to forced-Mac and yes to C/C++, Windows. This founds the base for DragonFireSDK that uses Microsoft Visual C++ to develop, test iPhone apps.

Apps, Games created with DragonFireSDK can be completely written and debugged in Windows and are also fully compliant for distribution and sales at the Apple iPhone App Store.

There is a quick Starter Guide available that help you kick start writing your first iPhone app and run it inside the emulator that ships with it. The API is quiet simple to use and is available here. One of the Apps: Un Stacker developed using this SDK is already available on App Store [link]. In addition, 5 Sample Apps are demonstrated and explained with code.

Method 3. Hackintosh: This is one of the effective ways of doing it: Install Mac on PC and then run the Native iPhone SDK. This is already a popular practice among OSx86 communities. The only limitation is that it could get tricky and time consuming for the newbees. You can refer to our Hackintosh Guides:

Method 2: Cross compilation of Adobe apps: You can write your apps in Flash Actionscript 2, ActionScript 3 or Adobe AIR, Flex and then cross compile it to ARM binary that is executable on iPhone. This can be done installing Project Sprouts for which sample Flex applications source is available here.

Here is a video on how this is done:

Method 1. Flash CS 5: This is in fact the most effective and easiest way to make it to App store doing all the “legal stuff”.

Flash CS 5 introduces new Feature that let’s you develop iPhone native applications just like you develop Adobe AIR apps. Recently, Adobe announced support for Multitouch, Accelerometer, GPS support in Flash 10.1 for phones. CS5 adds new APIs that lets developers leverage these modern Phone features and hence develop application not just for iPhone but for all Phones that support Flash.

So the Horizon is quiet big, and CS5 with ActionScript could find a great way to develop applications on iPhone. If you are familiar with a scripting language, say, Javascript, learning ActionScript is as easy as an ApplePie.

Already, App Store has a number of Apps built based on Flash (I believe they are using Crosscompilation): you can checkout few full blown apps here.

Only bad part of this method is, it’s still unavailable. However This is what Official adobe site has to say about it:

When will the Flash Professional CS5 beta be available for download?
The beta will be available for download from Adobe Labs before the end of 2009.

You can develop, build and test in native Flash debugger, however, soon we should see a simulator for mobile devices, especially for the iPhone.

I needed more clarity whether the final step, signing of Apps would be possible on Windows. I contacted Adobe on this. Alexander MacDonald said “Once you have created your content it is compiled into an iphone executable, then signed by our ADT tool and then zipped to create an ipa—the only thing you need from apple is your developer certificate. The crypto algorithms used by Apple to sign iPhone apps are all industry standard ones which anyone can implement on any platform they wish,” which in the case of Flash CS5, also includes Windows.

The app hence created can be installed to iPhone via iTunes for testing to substitute absence of simulator for the mean time. So all in all, everything would be legal, and will work great.

However, here is the demo of how applications will be created in Flash CS5:


Today, it doesn’t support everything SDK supports, but it would soon do. With Flash opening up a way to iPhone development, Adobe is adding millions of new developers to the iPhone App store contributors.

Update: The best way: Method 0: Codename One
Using Codename one you can Develop Android, iOS, WP8 apps using Java onWindows The framework works with POJO (Java) using eclipse, netbeans and is free, Open Source.

It is one of the most comprehensive and best solutions to build Android, iOS, WP8 apps using single code. We highly recommend it.

We write latest and greatest in Tech GuidesHackintoshAppleiPhoneTabletsAndroid,  Open Source, Latest in Tech, subscribe to us@geeknizer on Twitter OR on Facebook Fanpage:

GD Star Rating
loading...
GD Star Rating
loading...
How To Develop iPhone Apps on Windows, 7.3 out of 10 based on 26 ratings

40 thoughts on “How To Develop iPhone Apps on Windows”

  1. I think Titanium is for JavaScript not for Java development of applications for Iphone. Am I right ?

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  2. First off, I really appreciate you mentioning Project Sprouts in your article.

    Unfortunately, as of right now (March 14, 2010), Project Sprouts doesn't build (or cross-compile to) native iPhone applications….

    Please update the post if you get a chance.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  3. Thank you so much this information was super useful. This will help me convert my online website http://www.freesleepinfo.com/ into a mobile iphone app. Again thanks so much, this will help me because I don't have a mac.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  4. I'm glad someone pointed that out, I was a bit confused! I think this would have done the job: ball.x += tx * 0.3;

    Absolutely excellent video though!

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  5. None of these is allowed any more. 🙁
    Fuck it, if I ever need to make something for an iThing it'll be webbased.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  6. thanks for the info, I am in the first stages of research and founf thid article very informstive, So I need to buy a mac, unless….. I can create it on my iphoneÉ
    Cheers

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  7. Have you actually used CS5 to make iPhone apps? If not, how do you know it is the most effective way?

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  8. Awesome article & video mate – I really appreciate your work.
    Thanks a lot.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  9. really interesting… but, will I be able to develop iPhone apps on Windows with Flash CS5 ?

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  10. Great post on developing apps! Thank you. I'm also working on some apps right now and your opinion is valuable to me.

    Here are some great resources I have found and used to create the best app for me and my clients:

    If you have programming experience and enjoy working on the tech part yourself, see this complete e-book with everything you need and much more:
    http://5aaa979yj9tyq782x91auoev1s.hop.clickbank

    However, I myself don't have any programming preparation but I have millions of great ideas for developing and
    promoting iPhone apps! If you are like me, use this excellent guide for building your app with very low costs and high success rates:
    http://d7080fx3w2p3udc8z9ljn7fiwo.hop.clickbank
    It sure helped me..

    Hope you will find them useful!

    Thank you Kathy,
    Lucian.
    http://www.MindThePeople.blogspot.com

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  11. “Special Update: September 9, 2010

    Apple’s recent announcement that it has lifted restrictions on its third-party developer guidelines has direct implications for the Packager for iPhone. The feature is available for developers to use today and we will now resume development work on this feature for future releases. This is great news for developers and we’re hearing from our developer community that new AIR applications for iOS devices are already being approved for the Apple App Store. We do want to point out that Apple’s restriction on Flash content running in the browser on iOS devices remains in place.”

    http://labs.adobe.com/technologies/packagerforiphone/

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  12. If you want to build an RSS reader into your iPhone (iPad iPod) app, and you want to do it with flash professional then the app I just got approved today may help you.

    http://itunes.apple.com/app/flash2app/id398297119?mt=8#

    flash2app provides a working demo and complete code snippets for three different projects.
    1) A simple 2.0 RSS reader that is completely modifiable.
    2) Accessing the accelerometer to move a ball on the screen.
    3) Accessing the GPS for longitude and latitude.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  13. Say no to Objective C, say no to forced-Mac and yes to
    —-

    Say No to Apple full stop. The platform (ie. iOS) is the problem here, as Apple is not interested in openness, only in control. Even if you end up being able to code in another language, you're still going to be restricted in many different ways.

    No to iPhone, yes to Android.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  14. Titanium Documentation:

    Preparing for iOS development

    For iOS you will need to have a Mac running OS 10.6 (Snow Leopard) and an iOS developer account

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  15. I created the App “Ditto!” for the iPhone and “Ditto! HD” for the iPad completely in Windows with DragonFireSDK. Thanks so much for the recommendation! *counts iAds money*

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  16. oh my God, I am a newby at all the coding and stuff, I’m going to try to attempt to make and App using Windows (i dont have a MAC) it seems so hard, but I have to try. =] lol
    I hope someone will be able to help me, I heard the guy speaking in the video all i heard is blah blah blah. 🙁 *sigh*

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  17. – There actually is a great way to develop iPhone apps on the PC without having to jailbreak your iPhone. Rhomobile has created a hosted development tool called RhoHub that solves this problem and also also gives you some other valuable features like building apps online for all smartphones without having to install SDKs locally. Check it out for free at http://www.rhohub.com

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  18. @Butterfly321: Good luck hon! LOL.

    Author: Could you please update this information for the sake of good information? This article comes up number one in Google, but it’s dated from 2009… Since you have such excellent Google rating, maybe you could do the world a favor and update? Now I have to go back and see what the “2011 develop an iphone app in windows” gets me.

    Thanks.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  19. Do you think that there is possible to do the same things on Windows as you can do on Mac OS X, regarding iphone apps?

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  20. With iPhone application development being far less expensive than many people imagine, this is a great opportunity to market your business in a high profile and effective medium at a cost much more reasonable than most people think.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply
  21. Interesting app. It is very nice to look at and very professional. You can humble it to anyone if your iPhone has that kind of app.

    GD Star Rating
    loading...
    GD Star Rating
    loading...
    Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.