41

I was reading some sort of article stating you need Mac OS X to develop iPhone apps. Is there really such a restriction?

Can't you just download the SDK (and the iOS developer program) IDE to Windows?

user_1357
  • 7,766
  • 13
  • 63
  • 106

11 Answers11

43

Yes, you do need Mac OS X for that. Xcode (SDK) will only work on Mac OS X. However, if the legal part for you is not really important you can install Mac OS X on your normal PC. Just google "Hackintosh".

Cesare
  • 9,139
  • 16
  • 78
  • 130
Novarg
  • 7,390
  • 3
  • 38
  • 74
  • 13
    I would strongly recommend not doing the Hackintosh approach. The money you will "save" will be far less than the time you will lose maintaining your hackintosh. – Skyler Saleh Mar 05 '12 at 17:04
  • 5
    but if you successfully config Hackintosh then it is a good start point if you are a new developer in ios domain. Then after learning if you found comfortable in development ios apps you can move to any apple hardware. but there is a anther option which i recommend you is MAC-MINI it is cheap. – Faheem Rajput Jan 17 '13 at 06:05
  • Totally agree with @SkylerSaleh. I have built a couple of hackintosh's and they aren't worth the trouble. If you can't or don't want to spend the money on a new Mac, get a refurbished or used Mac. – LJ Wilson May 08 '13 at 13:27
  • 7
    I've been using a hackintosh for more than a year and had 0 troubles with it – jcesarmobile Jun 20 '13 at 08:41
  • 6
    the price of an apple machine is so high that I don't see why you would advise against Hackintosh. No logic at all here. – David 天宇 Wong Dec 12 '13 at 05:51
  • You can rent one from MacinCloud.com instead. The problem for Hackintosh is that updates often break things and you are always one major version behind. You can also buy a used one, such as a Mac Mini from ebay. – MacDaemon Feb 03 '16 at 23:08
  • 1
    What about using a VM? – Kelvin Shadewing May 17 '17 at 20:58
16

You don't need an actual Mac, just Mac OSX. If you don't feel like buying a mac than you can get a hold of the image of Mac OSX and install it onto your PC using Virtual Machine software. I use VMWare to run MacOSX from my Windows 7 x64 machine. VM's are a great way to go, the driers can take a bit to setup, but once everything is working it's perfect. VM's even support ethernet so from within the VM you can browse the web, download mac apps. Install things like XCode or GameSalad. I suggest researching how to use Virtual Machines.

Michael
  • 161
  • 1
  • 2
7

One near-solution is to run OS X in a Virtual Machine on a Windows platform. You're then developing on XCode on OS X, in a VM on Windows. This way, you don't have to buy a Mac, or dedicate the hardware to a "Hackintosh".

Of course, this may not be legal by the license terms; I'm only speaking about the technical possibility.

abelenky
  • 63,815
  • 23
  • 109
  • 159
6

You absolutely need Intel Macintosh hardware to develop iOS apps. The iOS SDK requires Xcode and Xcode only runs on Macintosh machines. I think that any Intel Mac will work, but with how fast things are changing a newer machine will get you longer time before you are forced to upgrade the machine.

Mark
  • 6,108
  • 3
  • 34
  • 49
5

Nope, you need an Intel-based Mac to develop apps for iOS. There is no iOS SDK for Windows.

That being said, there might be a way to use something like PhoneGap to develop your app "elsewhere" and then create a suitable package for iOS as well as other mobile platform. I am not familiar enough with PhoneGap and similar tools to know about this angle with any more certainty though.

Mark Granoff
  • 16,878
  • 2
  • 59
  • 61
  • 2
    On their website( http://phonegap.com/start ) it is stated that you do need an `Intel-based computer with Mac OS X Snow Leopard (10.6)`. – Novarg Mar 05 '12 at 16:54
  • 1
    Now, with [PhoneGap Build][https://build.phonegap.com/], you can have PhoneGap build the iOS package for you from your PhoneGap app (along with many other mobile platforms). You do still need a developer license from Apple, obviously. – Brandon Jul 01 '13 at 21:04
  • @Brandon With the phonegap cloud build, you still need mac hardware for certificate generation and/or testing. – gregtzar Nov 16 '13 at 23:58
3

You can't, there is no iOS SDK for Windows, it only has a Mac version. However, there are various emulators for Mac out there that you can try to install onto Windows. I've tried this before and it did work, however the performance was really poor. If you really wanted to do iOS development. I would strongly suggest you to actually purchase a Mac.

gtr32x
  • 2,033
  • 4
  • 20
  • 32
1

One year later... I am not familiar with the prerequisites for developing native iOS apps, but wanted to add the possibility of creating a hybrid mobile application. Usually even then one needs the native tools and SDKs for building the wrapper application. But PhoneGap provide a cloud-based build service, which seems to do the job:

"What about developer accounts and SDKs? Do I need to set those up before starting with PhoneGap Build?

No! But you might want to install some of the SDK emulators if you don’t own a particular device that you want to test a build for."

Source: PhoneGap Build service

I have not tested the service myself. Just wanted to give an additional path to consider.

1

To be clear for iPhone apps development required Mac Computers. Xcode and iOS SDK to lead through the app development.Objective-C is the programming language which is most required for iOS app development to build apps. And to be frank, there is a difference between iOS and OS X. iOS and OS X share more framework. So porting app works from OS X to iOS is possible with a little work. If you are a cocoa developer you would be adapt to these frameworks easier.

Check for more information: developer.apple.com/library/ios/documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/Introduction/Introduction.html#//apple_ref/doc/uid/TP40007898

laalto
  • 150,114
  • 66
  • 286
  • 303
  • In a briefly future Swift programming language will take the place of Objective-C and even of embedded C in Apple machines – Bruno Barros Nov 15 '15 at 18:57
1

You can just install MacOS X on windows platform with the help of VMWare which you can use both of operating systems simultaneously side by side.

If you try develop iOS app with cordova like tools, you can simply build with the required SDK and compile it as iOS app then test it on your iPhone or any virtual emulators.

Karthik SWOT
  • 1,129
  • 1
  • 11
  • 15
1

So this is an old question but also the first to appear for me in Google and I finally found a legal way. In 2020 you can go with MacInCloud, costs one dollar an hour for a basic plan. You can code everything elsewhere and then just use the cloud service to deploy the final steps in Xcode. Don't know about installing on your own ipad for testing, haven't gotten there yet.

rwalroth
  • 320
  • 2
  • 10
0

Yes, you´re gonna need a MacBook or alike to develop for iOS. In my opinion, one of the biggest problems of developing apps for iOS is that you regularly have to buy a new MacBook (or another Mac based technology computer), since over time the most current version available of xCode for your already recently outdated OS X becomes incompatible with the newest iOS.

Bruno Barros
  • 409
  • 4
  • 14