How to really benefit from crossplatforming (iOS dev on Windows)?

While Cordova and Ionic solutions are supposed to be multiplatform I still find this quite difficult to achieve the multiplatforming without possessing a bunch of different devices and OSes. I’m on Windows. I’ve been developing software for Windows since, well… ages. Recently I’ve found the crossplatform idea with html+js quite interesting, but at this moment it seems to me not that easy as it was at the first glance. For example, I’ve set up my Android toolbox on Windows and that was quite fast and painless. I can feel comfortable and I am productive. But what about the other platforms? Is it easy to just take the same codebase, do the platform add sth and go on? Rather not. Even Windows 8 or Windows Phone development is not possible without a physical WP8 device or the emulator which only works on Windows 8 PRO + a capable CPU. Is it easier for iOS? Well, it’s almost not possible at all without an iOS device. What is your experience guys? I mean you on Windows. Have you maybe found a path for productive crossplatform development on Windows with the Cordova and without all these devices and dependencies on OSes? I’d like to publish my apps in the Apple App Store but I’m facing a situation in which to be focused on development and productivity I have to buy at least a Mac Mini to avoid the pain of hackintosh on VMs. Isn’t there any easier path for getting a build for publishing on own account in Apple Macstore?

I switched to MAC recently due to the same issues,
Developing IOS and Android is much easier on a MAC then on a WIN machine. ( Except the learning curve if you never worked on a mac before :wink: )

Alternative is to use a cloud build service ( I think ionic will work on this too ) like

Unfortunately I cannot switch to a Mac because mobile apps are rather my hobby and the job is on Windows.

I’m not sure if Phonegap build would help to publish to Apple App Store without access to an Apple’s physical device? Have you tried this path and can confirm?

I’ve also found Monaca solutions in the cloud, but it seems they also require Apple’s device for this purpose.

I’ve read about macinthecloud service but some people reports are that it is very slow.

Please share your experiences Windows guys :).

Im on windows now!
Im using hackintosh with virtualbox installed on.
My i7 is working good and not freezes when building. Also you need to install and setup all your needs like xcode and etc…
When im building an app im sharing a folder with my virtual (GUEST OS) on virtualbox and compiling to ios if i need.
Developing on Windows compiling for Android on windows. And if I need IOS im starting virtualbox and hackintosh and compiling to ios.

more info about hackintosh here

Hi @rafaellop!

I faced the exact same issue few weeks ago. At the start of my project, I made some search on the internet about crossplatform stuff. My goal is to develop an app, with the same code base, and deploy it for both Android and iOS. Our hard/software environment: Windows 7 x64 PC, a “new iPad” and my own Android device (BYOD…). My company wants opensource frameworks and don’t want to heard about Phonegap or other things like that. It’s really hard to find a clear information on that topic. Many people says “oh yep, you can do whatever you want with hybrid app, just use PhoneGap”, but when you go deeper, you’ll find less and less trusted/valid informations. I found some - rare - topics about this issue, I picked two:

The first link talks about “upcoming new features”, without real solution since.
The second link will give you some informations/solutions:

  • You can use Phonegap to build your app in the cloud (or buy a Mac)
  • You can use Macincloud to deploy your app to the App Store (or buy a Mac. Oh, really, I <3 Apple openness)

What I did: installed the Ionic View app which lets you “view” your app (previously sent in the cloud with the “ionic upload” command). It’s not perfect but for the first development step, it’s fine. In a step 2 or 3, when I’ll have an app working well on my Android phone, I’ll explain my boss that I need a Mac to go further.

@cybernatic hackintosh is a semilegal solution depending on the OS source or country (some countries law is above Apple eula that prohibit VM usage). However it is interesting that it works. Have you maybe published any app to Apple’s app store using this method?

@Jiyuu the second link clarifies a bit but mention that a Mac device is still needed for uploading the build to the app store. So for now for the iOS development on Windows we would need to :

  1. develop an app on Windows
  2. build the app for iOS using remote build like PhoneGap
  3. upload the app to the app store using a friend device

I’ve read in the first of your links that ionic is planning a service similar to the PhoneGap build. That would be great if it was possible to use the Ionic CLI for getting iOS builds. That is definately something many people would pay for. Anyone know any ETA for this feature?

There will be still the 3rd step that requires a physical device, but this might be eventually sorted out by macinthecloud service (which is $1 per hour of work).

Any other ideas?

We develop our apps locally and let phonegap do the job. We also publish to the appstore. It works great and you don’t have to worry about plugins, etc., just put them into you config.xml and phonegap will compile everything

for now im not pulished to Apple’s app store. But in plans i will check it out of course =)
The other solution is Phonegap as @Janson told.

@rafaellop I have used both PhoneGap Build and MacInCloud services for building iOS from Windows.

Both work pretty well, phonegap build is free for 1 private project and it’s pretty easy to do, just upload the zip and it does the rest. MacInCloud can take some setup, I was using this with the Visual Studio Cordova tools so I could develop inside Visual Studio and have the build fire off remotely then give me the package.

1 Like

Yep for uploading the build you’ll need a Mac or MacInCloud.

Ionic is planning a service to deal with iOS stuff, but I have no idea if that’ll be a service similar to PhoneGap build. Paid services are already available (PhoneGap, MacInCloud), I hope that Ionic’ solution will be free and local.

Maybe @mhartington could give us some update?

Nothin to add yet,
Still a work in progress.