Best Development Tool For Making Windows And Mac Apps

That may not make it the best fit for simple web design needs, but if you are looking more in the way of web application development, the tools offered in Aptana may be a great fit. One concern about Aptana is the lack of updates that the company has done over the past few years. With developer tools, design and build apps and manage projects. See our tips on the best tools to make a development project go smoothly. Wireframe tools make the process of knowing how to create an app or website fundamentally easier, by visually stripping the product down and enabling all involved to focus purely on functions and user interactivity. An expert passionate about cell phones, smartphones, mobile apps, tablets and any tech gadgets. PhoneGap is a freeware, open-source program for creating apps for Android, Windows, and iOS mobile devices. It uses standard web development languages like CSS, HTML, and JavaScript. With this cross. Xcode is the primary tool for macOS and iOS development and it is only available on the Mac. It is a free download from the Mac App Store that includes Swift 4 and SDKs for the latest versions of.

Active3 months ago

Is there any way to tinker with the iPhone SDK on a Windows machine? Are there plans for an iPhone SDK version for Windows?

The only other way I can think of doing this is to run a Mac VM image on a VMWare server running on Windows, although I'm not too sure how legal this is.


We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

40 Answers

12 next

It's certainly possible to develop on a Windows machine, in fact, my first application was exclusively developed on the old Dell Precision I had at the time :)

There are three routes;

  1. Install OSx86 (aka iATKOS / Kalyway) on a second partition/disk and dual boot.
  2. Run Mac OS X Server under VMWare (Mac OS X 10.7 (Lion) onwards, read the update below).
  3. Use Delphi XE4 and the macincloud service. This is a commercial toolset, but the component and lib support is growing.

The first route requires modifying (or using a pre-modified) image of Leopard that can be installed on a regular PC. This is not as hard as you would think, although your success/effort ratio will depend upon how closely the hardware in your PC matches that in Mac hardware - e.g. if you're running a Core 2 Duo on an Intel Motherboard, with an NVidia graphics card you are laughing. If you're running an AMD machine or something without SSE3 it gets a little more involved.

If you purchase (or already own) a version of Leopard then this is a gray area since the Leopard EULA states you may only run it on an 'Apple Labeled' machine. As many point out if you stick an Apple sticker on your PC you're probably covered.

The second option is more costly. The EULA for the workstation version of Leopard prevents it from being run under emulation and as a result, there's no support in VMWare for this. Leopard server, however, CAN be run under emulation and can be used for desktop purposes. Leopard server and VMWare are expensive, however.

If you're interested in option 1) I would suggest starting at Insanelymac and reading the OSx86 sections.

I do think you should consider whether the time you will invest is going to be worth the money you will save though. It was for me because I enjoy tinkering with this type of stuff and I started during the early iPhone betas, months before their App Store became available.

Alternatively, you could pick up a low-spec Mac Mini from eBay. You don't need much horsepower to run the SDK and you can always sell it on later if you decide to stop development or buy a better Mac.

Update: You cannot create a Mac OS X Client virtual machine for OS X 10.6 and earlier. Apple does not allow these Client OSes to be virtualized. With Mac OS X 10.7 (Lion) onwards, Apple has changed its licensing agreement in regards to virtualization. Source: VMWare KnowledgeBase


Xamarin is now my top vote. Purchased by Microsoft and built directly into Visual Studio now and being able to use C# and with all the updates and features they are adding, you can do everything on Windows, even compile, build and initiate deployment. You only need a Mac Mini to act as the deployment server, but you never need to write any code on it.

For games, Unity 3D is my top choice. The editor is free up to 100K annual revenue (perfect for indie). Unity 5+ is fully unlocked as well, even the free version. Unity supports iOS, Android and most other platforms. For iOS and MAC, simply get the cheapest MAC Mini you can find to do the build, but all the development can be done on Windows.

Other options:

PhoneGap also works, but I have found it isn't quite as nice for gaming, but it's pretty decent for regular GUI applications. Again, you'll need a Mac to sign and test your application and be in compliance with Apple's terms of use.

Flutter is a free cross platform mobile app development framework from Google.


If you have a jailbroken iPhone, you can install the iphone-gcc toolchain onto the iPhone through Cydia and that way you can just compilie the apps on the iPhone. Apps that are developed this way can still be submitted to the App Store.

And although Mr Valdez said it is a grey area (which it is), jailbreaking is incredibly easy and pretty much risk free. Yes, it voids your warrenty but you can just do a restore and they will never know.


Most of 'so called Windows solutions for iOS development without Mac' require Mac at the end just to sign and send to app store. I checked a few, not all though (who has the time?)

At the end it's just too much trouble to learn 'their super special easy way to program iOS without Objective-C', they have lots of bugs. Really the goal they are setting is unachievable in my view.

Also a lot of time they make you use Objective-C equivalent statements simply in another language. They kind of look the same but there are always subtle differences that you have to learn on top of obj-c. Which also makes even less sense, because now instead of learning less you have to learn more. So where is the gain? Also they cost a lot, because they are very hard to develop.

Many lack any debugging abilities whatsoever.

In my honest opinion, if you are a hard-core iOS developer then for sure buy the best Mac and learn objective-c. It's expensive and takes time, but if it's your path, it's worth it.

For an occasional use, it's just easier to rent a remote Mac service, like XCodeClub.com


The SDK is only available on OS X, forcing you to use a mac. If you don't want to purchase a mac you can either run OS X on a virtual machine on your windows box, or you can install OS X on your PC.

In my experience the virtual machine solution is unusably slow (on a core2 duo laptop with 2G ram). If you feel like trying it search for the torrent. It's probably not worthwhile.

The other option is to install OS X on your PC, commonly referred to as a hackintosh. Hackintoshes work quite well - my friend just sold his mac because his Dell quad core hackintosh was actually much faster than the apple hardware (and cost about 1/3). You can find lots of articles on how to do this; here's one on how to install on a Dell Inspirion 1525 laptop: hackbook pro tutorial

Of course both of these options are likely counter to some licensing scheme, so proceed at your own risk.


You can use WinChain

Quoting the project page:

It's the easiest way to build the iPhone toolchain on a Windows XP/Vista computer, which in turn, can take Objective-C source code that you write using their UIKit Headers (included with winChain) and compile it into an application that you can use on your iPhone.


You don't need to own a Mac nor do you need to learn Objective-C. You can develop in different environments and compile into Objective-C later on.

This article one of our developers wrote gives a pretty comprehensive walk through on installing OS X Snow Leopard on Windows using iBoot, then installing Vmware (with instructions), then getting your iPhone dev environment going... and a few extra juicy things. Super helpful for me.

Hope that helps. It uses Phonegap so you can develop on multiple smart phone platforms at once.



A devkit that allows one to develop iPhone apps in Objective-C, C++ or just plain C with Visual Studio:

Check it out at iOS build env

You can build iPhone apps directly within Visual Studio (2008, 2010, Express).

Pretty neat, it even builds IPA files for your app after a successful compilation. The code works as is on jailbroken devices, for the rest of the planet I believe the final compilation & submission to the App Store has to be done on a Mac. But still, it enables you to develop using a well-known IDE.


Of course, you can write Objective-C code in notepad or other programs and then move it to a Mac to compile.

But seriously, it depends on whether you are developing official applications to put in App Store or developing applications for jailbroken iPhone. To write official applications, Apple iPhone SDK which requires an Intel Mac seems to be the only practical way. However, there is an unofficial toolchain to write applications for jailbroken iPhones. You can run it on Linux and Windows (using Cygwin).


Try macincloud.com It allows you to rent a mac and access it through RDP remote control. You can then use your PC to access a mac and then develop your apps.


You will soon be able to use Adobe Flash CS 5 to create Apps for the iPhone on Windows:


Hooray! You can now more easily accomplish this with the latest Xamarin.iOS, using a network-linked mac providing the build and deployment capabilities.

See here for more details:


If you want it to be legitimate, you have two options, cloud based Mac solutions or cross-platform development tools.You may consider the hackintosh approach or virtual machines if you don't care about legal stuff. If you have a decent PC, running a virtual machine would be the easiest way to go. You may never know which hardware will have driver issues on a hackintosh.

I've tried all these approaches and they all have pros and cons, but for the second group, I feel kind of guilty. I develop apps to make a living and I wouldn't want to rip off someone else for it.

If you are making a small project, cloud based Macs may prove useful. Rent it for a short time, develop your project and off you go. Don't bother learning anything new.

However, if your project is getting big, cross-platform frameworks seem to be the only alternative. The critical thing is that you need to choose wisely. There are so many hybrid frameworks, but what they do can be summarized in one sentence as 'diplaying web pages in an app wrapper' and developers' negative experience with hybrid frameworks also affects native frameworks.

I tried three of these (Titanium, Smartface and Xamarin) and they all claim to produce 'real native output' and in my opinion their claims are correct. You need to test and see it yoursrlf, it's not easy to describe the native feeling. In a previous comment, it was indicated that it takes some effort to learn these platforms, but once you get to know them, you can develop not just iOS applications but Android applications as well, all with the common code base. And of course, they are much cheaper than a cloud Mac. Some of them are even free. You would need a Mac only for store submission.

If you know JavaScript, try Titanium and Smartface and if you know C#, try Xamarin. Just note that for the device simuator, Titanium is dependent on a Mac, but Smartface has a simulator app for Windows development and it works better than I expected. On the other hand, Xamarin requires a Mac in your network.



If you want to create iPhone apps but no Mac, then you should try http://www.pmbaty.com/iosbuildenv/

It allows you to easily develop native iOS apps, like with XCode, deployable on any iPhone, iPod or iPad (jailbroken or not).

Use your favourite IDE to code in Objective-C, C++, C or ARM assembly, like in XCode. ARC and blocks are supported.

Compile your iPhone apps directly inside Visual Studio

It works on Windows all versions (XP, 7, 8), FreeBSD and Linux

Now with iOS8 support.


Interesting that no one has mentioned the cross-platform wxWidgets option.

It's less than an optimal solution, though.

IMHO, the business-wisest way to go is to invest the money in Apple's endorsed framework. That way, if you find yourself stuck with some mind-boggling problem, you have a much larger community of developers to consult with.


YOU CAN DEVELOP IPHONE APPS ON WINDOWS PC. I've done it, with complex apps. And it works perfectly. You can develop iphone apps without ever seeing a mac or iphone.

You can develop on windows an HTML (or better: HTML5) app, using tools like Sencha or JQTouch, or mobi1. (They used to all be free for a while)

Then you use openSSL to sign the app. And Adobe PhoneGAP Build service to build IPhone App.

But you need the iphone developer licence to install it on an iphone. But you don't need a mac or iphone at any minute to compile, build or test it - all that is done ON THE PC.

I've done it, and it works perfectly. (But with Android type responsiveness - not as fast as a native IPhone app)

You could also use a program from the the Babylonian era (circa 300 bc) running C and C++ called dragonfly. If your app has one or two screens with limited interactivity, and many calculations, go for it. It includes an emulator. You compile to the iphone at the press of a button. (Not sure, but I think you do need a developers license in any case)

And then there is Xamarin. You develop in C# with special calls to native code. You'll have to learn the environment.


Check out this:

It is a project that attempts to be able to cross-compile programs written in a variety of source languages to a variety of target languages. One of the initial test cases was to write programs in Java and run them on an iPhone. Watching the video on the site is worthwhile.

With that said, I haven't tried it. The project seems quite beta, and there isn't a lot of activity on their SourceForge site.


You can use Intel XDK with that you can develop and publish app for iOS without mac.

Click here for detail.


Oracle VirtualBox allows users to install Mac OS X in a virtual machine. If you are comfortable with it, you could just use that way to use Xcode. This is legal if you 'dual boot' your mac into windows, then install the VirtualBox within windows (or linux).

Other possibilities are cross-compilers such as Appcelerator Titanium (HTML, CSS and JavaScript) or MonoTouch (.NET).


Two other options

  1. Titanium Developer - free community edition - write in HTML/JavaScript - compile with Xcode (requires a Mac or VM)

  2. OpenPlus ELIPS Studio - write in Flex, compile on Xcode (requires a Mac or VM) - they just started charging for their product however.

I think there may be 'toolchain' options for these and some of the others mentioned, which allow you to compile to binary on Windows, and I have seen that you can upload a zip file and have a toolchain style compile done for you online, but this goes against the Apple licensing.

If I am not mistaken, a product such as Titanium that outputs/works with Xcode and does not use any 3rd party / alternative / restricted libraries should be in compliance, because you are ultimately compiling in xcode - normal Objective-C code and libraries.


You can use Sentenza for make applications for iPhone, on Windows.Tested with success.It's not a solution but a good alternative !


As has been pointed you can attempt to use the WinChain but if you are a newbie coder it won't be easy.

The iPhone SDK will work on Hackintoshes (a normal PC with OS X installed on it). I know as I have one and it does.

So after you go buy an OSX license you could TRY to install it on your PC on a different drive using Boot-132 or one of the other installers like iDeneb. The issue you will have to do a lot of tinkering and things still won't work quite right.


Using Xamarin now we can develop iPhone applications in Windows machine itself with the help of Xamarin Live Player.

Using this Xamarin live player dev/deploy/debug cycle can now be done without an Apple system.

But to sign and release the app Apple system is required.

Find the reference here

I checked the reference nothing dodgy


Yes and you don't need to learn Objective-C and buying Apple software and hardware.

Adobe have created compilator from ActionScript 3 to program for iOS. And later Apple approved this method of application creation.

This is best way to create Apple applications under Windows or Linux/BSD (and another one for MacOS-X)


You can install OSX on PC but experience wont be great and it needs lot of work. Alternate is to use a framework/SDK Codename one: which is based on JAVA and can be used to code in WP8, Android, iOS on Windows (eclipse) with all extensive features

Features Overview:

  1. Full Android environment with super fast android simulator
  2. An iPhone/iPad simulator with easy to take iPhone apps to large screen iPad in minutes.
  3. Full support for standard java debugging, profiling for apps on any platform.
  4. Easy themeing / styling – Only a click away

More at Develop Android, iOS iPhone, WP8 apps using JavaDisclaimer: This is my review for the product


If you want to develop an application on Windows environment then there is an option, you can install MAC OS in your windows Platform name is : 'Niresh'MAC OS' , you can search that text on Google

then you can download the whole MAC OS Source and easily installed MAC OS in your Windows PC, Niresh is able to Hack the whole OS.

Hope this will help you.


As many people already answered, iPhone SDK is available only for OS X, and I believe Apple will never release it for Windows. But there are several alternative environments/frameworks that allow you to develop iOS applications, even package and submit to AppStore using windows machine as well as MAC. Here are most popular and relatively better options.

PhoneGap, allow to create web-based apps, using HTML/CSS/JavaScript

Xamarin, cross-platform apps in C#

Adobe AIR, air applications with Flash / ActionScript

Development

Unity3D, cross-platform game engine

Note: Unity requires Xcode, and therefore OS X to build iOS projects.


If you have ssh access to a Mac, then you can use a VNC (like Vine VNC, which allows multiple uses at once - thin thin client) to control XCode.

This could be useful if you wanted to access a Mac Mini from a laptop, or your S.O. is hogging your MacBook.


protected by CommunityMay 25 '12 at 15:33

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?

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

Cross-platform app development tools are programs that let you build apps for more than one platform, like apps for Android and iOS, using the same code base.

The reason cross-platform mobile development tools are so handy is because there are so many different types of devices out there. If you want to release your app on as many app stores as possible so that lots of phones and tablets can use it, you'll need the app to support multiple platforms.

In other words, you will miss out on potential users if your app doesn't run on their devices. A cross-platform app builder can save you from needing to program the same app in different languages and in different mobile app making programs.

of 05

PhoneGap

What We Like

  • Extensive documentation and online support.

  • Easy to configure.

What We Don't Like

  • Multiple namespaces make managing packages confusing.

  • Restrictive plugin integration.

PhoneGap is a freeware, open-source program for creating apps for Android, Windows, and iOS mobile devices. It uses standard web development languages like CSS, HTML, and JavaScript.

With this cross-platform app developer, you can work with device hardware features such as an accelerometer, GPS/location, camera, sound, and much more.

PhoneGap additionally offers an Adobe AIR app and online training courses to help you access native API’s and build mobile apps on its own platform.

You can build apps with PhoneGap on Windows and macOS, and there's an Android, iOS, and Windows Phone app that will run your custom app on your device to see how it looks before going live.

of 05

Appcelerator

What We Like

  • Powerful API that is easily extendable.

  • Ideal for mobile development beginners.

What We Don't Like

  • Lacks support for Windows Phone.

  • IDE interface is bare bones and a bit sluggish.

Appcelerator is a cross-platform app development program compatible with Windows, Android, and iOS that's advertised as 'everything you need to create great, native mobile apps - all from a single JavaScript code base.'

The app designer includes drag-and-drop for easy placement of objects, and the included Hyperloop feature lets you use JavaScript to get direct access to native APIs in iOS and Android.

Another neat feature with this cross-platform app development kit is the real-time analytics and the Performance & Crash Analytics, which gives you the ability to find and fix issues with your app.

The Titanium Development Platform from Appcelerator aids the development of native mobile, tablet, and desktop apps via web programming languages like HTML, PHP, JavaScript, Ruby, and Python.

It powers over 75,000 mobile apps and gives users easy access to over 5,000 APIs and location information.

The Appcelerator multi-platform app developer has a free option but there are also a couple other paid versions with more features.

of 05

NativeScript

What We Like

  • Access core APIs directly; easy to integrate custom modules.

  • An impressive amount of flexibility for a free tool.

What We Don't Like

  • Styling and layouts for Android and iOS are often inconsistent.

  • Requires a good deal of setup to get started.

The great thing about NativeScript is not only that it's a cross-platform development tool but that you can use it absolutely free since it's open source and doesn't have a 'pro' plan or paid option.

You can build mobile apps for Android and iOS with NativeScript using JavaScript, Angular, or TypeScript. It also has Vue.JS integration and supports hundreds of plugins for extended functionality.

NativeScript, unlike some of these other cross-platform mobile app development tools, requires knowledge of the command-line, which means you also need to supply your own text editor.

NativeScript has tons of documentation if you need it.

of 05

Monocross

What We Like

  • Fast porting; easy to keep up with frequent platform changes.

  • Easy third party API integration.

What We Don't Like

  • Hasn't been updated in a few years.

  • Community support has dwindled over time.

Making Wood Windows

Another free, open-source cross-platform mobile development framework you can download is Monocross.

This program lets you create apps using C#, .NET, and the Mono framework, for iOS devices like iPads, iPhones, and iPods, as well as Android devices and Windows Phone.

The developers behind Monocross wrote a book about cross-platform development that might come in handy while you're using the program, but there's also some online documentation on their website and built-in project templates that come with the installation.

You'll also need MonoDevelop in order to build apps.

of 05

Kony

What We Like

  • Ideal for designing apps for wearables and other smart devices.

  • Powerful testing capabilities including real-time previews.

What We Don't Like

  • Steep learning curve.

  • The manual is confusing.

  • Limited support for languages other than English.

With Kony, and a single IDE, you can build JavaScript apps to run on all platforms. However, Kony does come at a cost if you want more than one app, more than 100 users, and some other features.

This cross-platform app development tool supports all sorts of things, like chatbots, API management, voice, augmented reality, customer reporting, pre-built apps for reference, and more.

Tool For Making Holes In Leather

Kony can be installed on Windows and Mac computers, and the companion mobile app is used to preview and test your app on the actual device you expect it to run on.