Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS

iOS Development - Without a Mac!?

Hi guys! I'm a newcomer on Treehouse, and I really love to code, especially Apps. Sadly, all I can do is Android now. I want to learn iOS, but I can't even start because I have not a personal Mac. Only an iPad. Is there anyway to code for iOS with windows / use XCode in windows?

Also, to test on iOS devices, is there any way to bypass the $99 fee?

Thank you Treehouse for this wonderful platform to achieve our dreams!

6 Answers

The simple answer is that although you might be able to technically, you probably shouldn't!

You could install a "Hackintosh" version of OSX on an Intel Windows machine, or a VM like VirtualBox to run XCode. However, thatt would violate your EULA with Apple, potentially exposing you to litigation -- and unless you have more money for lawyers than Samsung, that's probably best to avoid. Aside from that, it can be a very frustrating experience trying to get drivers working for your hardware etc.

Similarly you could jailbreak your iPad, and sideload your programs to test them -- but that would also violate your EULA as well as potentially voiding your warranty on the device!

Basically, if you're determined to develop for the their ecosystem, Apple expects you to invest into it by buying their hardware first. But if its not worth that much money to you, then it may not be that important.

The only other way I can find is by using a third-party cross-platform solution such as Titanium or PhoneGap.

Thank you for the quick and informative response.

I've been doing my own research, but obviously I'm much worse at it than you. I did discover though, that the apple warranty says that for non-apple labeled devices. I could literally slap an apple sticker on my laptop and it would work legally... right?

I don't know if there is such a loophole on iDevices, but I've already gotten it jailbroken; I don't care!

Anyway, I won't be putting any apps on the App Store until I can afford all that stuff. I'm just wondering if I can get it to start programming and learning with Treehouse.

Phonegap and Titanium isn't iOS coding though; it's for HTML CSS and JS, and it's just a medium for those who don't want the complexities and power of Objective-C and iOS. I do! I want to learn!

So could you please tell me how I would have a VM Mavericks? How would I sideload programs? That would be wonderful! If it goes into piracy, you don't have to explain it, just say so.

Again, thank you!

Unfortunately I can't advise you an a Hackintosh install. I can only say that it is a little bit of a dark art, and totally frustrating if anything goes wrong, as well as violating the EULA and therefore possibly illegal.

Sideloading is just transferring directly via USB rather than the Apple store using Wifi/3G, but there I think you would have to Jailbreak your device to install the app -- once again, dubious.

I do agree with your comments about the cross-platform frameworks I mentioned previously -- I just included them in case you only wanted to build a simple app.

Personally I'll just wait until I need to upgrade my computer, and get an Apple if I REALLY want to develop for iOS. That way I can still dual boot into Linux (or even Win8.1 if some really desperate circumstance required it). Luckily Android is really interesting to learn to develop for until then!

Ok then! Thank you!

There is a MAC in the cloud service that you can look at. It's not free though.

MacinCloud

Patrick Cooney
Patrick Cooney
12,216 Points

It's a Mac. Not a MAC. A MAC identifies your specific device to the web with a unique ID that only it has. Not a big deal but it's worth knowing.

I see no one have mentioned Xamarin. You can build native iOS apps (as well as Android, Mac and Windows apps), but then you must learn C# rather than Objective-C. And it's not free.

Wow! I've never heard of this one before! Thank you! It may not be what I wanted exactly, but this is pretty cool! Thank you!

Sure, no problem. I'm not familiar with Xamarin, but I guess you have to sacrifice something to get the freedom to release to that many devices.

Christopher Hannah
Christopher Hannah
2,340 Points

Even with the Hackintosh, running OS X On a VM, I still think getting a real Mac is the best option. You don't even need to buy one straight from Apple, check sites like eBay for second hand ones. You will thank yourself afterwards.

I travel a lot for work and didn't really have the cash for an Apple laptop so i picked up a refurbished Mac Mini from http://store.apple.com/us/browse/home/specialdeals/mac/mac_mini. If you check it often you can pick up a base model for around $500 US plus tax. I picked up a logitech k400 wireless keyboard with track pad for under $30 bucks at Walmart. I bring an HDMI cable with me and use the TV in my hotel room as my monitor. It is probably the cheapest legit route you can go and you still get the 1 year warranty from Apple as if the product was new. I am actually using it in my hotel room in Seattle WA as I type this post. Thats around the same price as an XBOX one.