Developing iOS apps on Windows 7

Please read my question fully, I searched many questions but that doesn't answer my question fully. We are planning to develop an iOS app using PhoneGap, so we have also purchased $99 Developer license for it. So far we are good, but as per my research I found that we cannot build iOS app on windows, we compulsory need mac for it.

My question, is it necessary to use mac even if we don't have intend to submit to app store currently? Just we need to test our app on iPad so that once we have bug free application we can purchase mac and build release version out of it before we submit to app store.

Is this possible? Since we are a Java shop and this is our first project for iOS, please excuse me if I am asking something obvious.


Solution 1:

Run on PhoneGap on a PC until you hit a roadblock.

You can always post here on whatever specific roadblock you hit, but as the iOS toolchain has matured, you don't necessarily need Xcode to make an app anymore.

  • RubyMotion (non Xcode solution, but still requires a Mac OS)
  • WebApp frameworks
  • PhoneGap and other frameworks

So, you have dozens of tools to start and once your delay to development costs you more than the $250 it might cost to pick up a used Mac - you can decide to buy tools that make your development move faster or cost less due to quality or other costs to development that better tools will reduce for you over time.

Solution 2:

So the bad news is that XCode is needed for its iOS Simulator as well as its Application Loader facility for actually uploading the programs to iOS devices for "real" testing. You'll need XCode for signing your apps before submitting to the App Store. Unfortunately, XCode is only available for OS X.

However, the good news is that you may be able to purchase OS X and run it in a virtual machine such as VMWare Workstation. I don't know how straightforward this is, as it is rather difficult to get OS X to run on non-Apple hardware, but a quick Google search shows that it is possible. This method would (likely) be cheaper than purchasing a new Mac, although the Mac Mini retails in the US for only $599. Some posts I've seen indicate that this may or may not be legal, others say you need OS X Server for virtualization. I'll leave the research up to you.

There are also services such as MacInCloud that allow you to rent a Mac server that you can access from Windows via remote desktop, or through your browser. Unfortunately, I don't think you'd be able to use Application Loader, as you have to physically connect the device to your computer, but it would work for development and simulation, at least.

Good luck!

Solution 3:

It is possible to run OS X in VMWare Player on Windows 7 - I have seen it done and used it this way. However, the biggest drawback is performance - and it took two people a few days to get it working correctly. My suggestion would be to skip the Windows 7 platform and go directly with a MAC since your plans include that anyway.