Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have been using Linux (especially, Ubuntu) and Windows 7 for a long time. I want to publish iOS apps, but I don't have a Mac or an iPhone. I don't have anyone near me who will lend me a Mac, and I don't actually want to buy them either.

So my question is: how do I publish my iOS app from Windows or Linux? I am not referring to publishing programs for jailbroken iPhones, I want to publish through the Apple Store.

My search results indicate that there is no fool-proof way of publishing an iOS app from Windows or Linux. I also want to make it a paid app, and not give it away for free.

Does anyone know of a way to publish iOS apps from Windows or Linux?

share|improve this question

5 Answers 5

up vote 12 down vote accepted

Basically, Apple's policy is that in order to develop for iOS, you need a Mac.

They have all sorts of reasons for doing it that way: increased sales on the desktop market (which isn't exactly Apple's cash cow), controlling the development platform, better brand exposure, you name it.

Now, there may be tools to develop iOS apps without a Mac, but these will never be officially supported, and as such, they may break any time - Apple controls both the target platform and the development tools, and one of the reasons to do this is so that they can change both in tandem more quickly and without having to watch out for compatibility with third-party tools.

Apart from the political issues, if you develop for any platform, you absolutely need a real specimen of the device you're going to deploy to, if only for testing purposes. If you don't, you will miss edge cases, usability no-no's, and you are at risk of hitting cases where the emulation is not accurate.

Bottom line, you want to develop for an Apple platform, you need a Mac - consider a used mac mini, or if you're daring, a hackintosh. Or decide to not develop for iOS.

share|improve this answer
    
Thanks tdammers, your answer was very helpful. Now i know that there is no meaning of trying to develop an app for ios if i dont buy a MAC. Thanks again . –  The Dark Knight Sep 21 '12 at 9:47
    
A used Mac which is "good enough" for iOS development should be much more feasible than a brand new one. You may want to consider how it is to develop for Linux using only Cygwin under Windows to see why you might as well just do the plunge. –  user1249 Sep 21 '12 at 12:30

I can't believe no one mentioned Dragonfire SDK. They recently came out with version 2.0, which adds a lot of features. You program in C/C++ with Visual Studio, and your C++ code uses their API to actually call iOS objective C funtions, so it ends up being native. It comes with a great simulator for testing from within VS. Then when you are ready to compile it to native code, you send it to their servers, which compile it in MacOS X, then sends the file back to you. You can even publish paid apps to the app store through them from Windows. If you don't have an iOS developer ID, they let you publish free apps through them for free, in their name. I assume you could use your own ads that way.

The only downsides are that it costs $99 for iPhone or iPad versions and $149 to do both. Also, it's Windows only; they don't have a Linux version.

share|improve this answer
1  
Thanx for the info –  The Dark Knight Nov 27 '12 at 14:43

You might have to look at the tools you are utilising for the iOS development, there are platform independent tools like Microstrategy mobile platform which simplifies the mobile app development and a single source can be used for multiple devices so have a look at it.

http://www.microstrategy.com/mobile/

share|improve this answer
    
Thanks I will check it out –  The Dark Knight Oct 11 '12 at 5:11

If you 'just' are working on HTML Apps there is a new cloud solution from Adobe called https://build.phonegap.com/

You don't need to have a Mac or Xcode to deploy iOS Versions of your Phonegap App this way.

The application has to be a Phonegap application (html5/css/JavaScript based).

share|improve this answer
    
Thanks a lot Jan. Right now i have started exploring the link you have provided . Will provide details about it once i am done . –  The Dark Knight Sep 21 '12 at 15:28

Officially you must have an Apple computer (iMac, Macbook, etc), and boot it in Apple OS X in order to develop for the iPhone. Unofficially, you can get a running OS X in a virtual machine that you can run on any computer under any OS. There's also the possibility to acquire an OS X image that can be installed on a non Apple (but still x86) computer. I've seen this working, but it's not great. Apparently you have a hard time connecting your IOS device to such a setup in order to deploy your app. Also, since the IOS SDK is tightly bonded to the OS X version, and thus you need the latest OS X in order to use the latest SDK, it's far simpler to just buy the Apple software and hardware.

I think it's important to the discussion to note that there are cross-platform SDKs that can be installed and tried on various platforms, but which still require Apple hardware and software to deploy to IOS. However these allow you to try them on non-Apple stuff (or at least preview them) before deciding weather to invest in that SDK's OS X license. An example of this is Unity 3D which can be installed on Windows as well as OS X (and Linux I think is coming up in the next version). You can easily see some of its basic capabilities even without having an Apple computer, then you can opt to buy its OSX/IOS license and install it on a Macbook in order to deploy whatever you make with it on an IOS device.

share|improve this answer
    
Thanks Shivan, you have given me some thing to look forward to here . –  The Dark Knight Sep 21 '12 at 11:58
    
De nada. I've forgot to also mention Adobe AIR which now lets you develop Flash applications for IOS, but can be easily tried on a non-Apple computer. Never tried this one personally, though. –  Shivan Dragon Sep 21 '12 at 14:45

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.