82

I'm developing a web app that apparently is having problems in iOS devices. The problem is that I don't own an iOS device and I develop in Linux Ubuntu. I'm looking for a way to emulate/simulate this OS in Linux (especially the browser), but haven't found anything.

So far, what I've found is the iOS SDK's Simulator, but that is meant for the Mac. And also some emulator for Windows. Has anyone done this before?

Elrond_EGLDer
  • 47,430
  • 25
  • 189
  • 180
YOMorales
  • 1,756
  • 1
  • 14
  • 24
  • 14
    The *web* app is intended mostly for regular browsers. However, a few users try to see it using an iPhone, and I needed to verify some problems they were having. – YOMorales Aug 16 '12 at 03:49
  • If it's a layout issue I recommend installing the Konqueror web browser. Then look in settings to be sure it uses Webkit layout engine (same as safari). – PetaspeedBeaver Apr 24 '16 at 10:27
  • Here is an article wich should solve your problem - http://www.proreactnative.com/How-to-Develop-iOS-Apps-on-Linux-Using-React-Native/ – Faktor 10 Mar 31 '17 at 14:17
  • [macOS VM with QEMU+kvm](https://github.com/kholia/OSX-KVM/), actively maintained – Darren Ng Apr 14 '21 at 11:48

7 Answers7

37

The only solution I can think of is to install VMWare or any other VT then install OSX on a VM.

It works pretty good for testing.

Fredrik
  • 1,214
  • 11
  • 14
  • Doing this, as no other option seems available (except for actually acquiring the mobile devices in question). – YOMorales Jun 19 '11 at 05:17
  • is it possible to deploy for tests an app on iphone using Linux? – Pabluez Oct 24 '11 at 19:52
  • With this solution, yes. – Fredrik Jun 15 '12 at 10:24
  • 4
    Is there a legal way to do this? I stupidly bought an OSX CD thinking that I could install it in VirtualBox, but it turned out to be much more compilcated than that. I think you need some kind of hardware image which is not strictly legal to obtain. No? – GlenPeterson Jul 20 '13 at 12:37
  • 2
    Virtualisation of some of the mac os is often not permited. http://apple.stackexchange.com/questions/20965/does-apples-license-for-os-x-allow-it-to-be-virtualized-on-an-hp-pc – pec Nov 13 '14 at 14:19
  • I have a "hackintosh" in VirtualBox (plenty of instructions online). Apart from the licensing issues, the performance is pretty bad and graphics glitches are common. Unless you only need a CLI environment, IMHO **this option is not suitable for serious development**. – kontextify Jul 31 '19 at 09:07
29

On linux you can check epiphany-browser, resizes the windows you'll get same bugs as in ios. Both browsers uses Webkit.

Ubuntu/Mint:

sudo apt install epiphany-browser

wviana
  • 1,228
  • 14
  • 33
  • 3
    This isn't a catch-all solution. The engine may be the same, but I have encountered some ios browsers which error on pages that render fine on epiphany. YMMV – gazhay Mar 20 '17 at 13:54
  • 2
    Working well for me to fixing layout bugs on cordova hybrid app – Giovanne Afonso Jun 25 '19 at 22:49
  • 2
    This may not be a perfect solution but it definitely helped me solve my javascript issue that was happening in Safari on iPhone without having access to one. – Besworks Apr 17 '20 at 18:19
  • @Besworks That's it. When I've answered this, I got into this question because I was developing something in Cordova. As I remember, I've used this to solve some layout bugs. So it may be an amend about this answer. – wviana Apr 18 '20 at 17:38
  • 1
    Thanks to epiphany I could solve some iOS bugs. Thanks so much for sharing this! – javinievas Jun 06 '20 at 23:00
  • This is underrated answer. Got the same bugs as on real iOS – Bartłomiej Sobieszek Nov 20 '20 at 22:58
8

BrowserStack.com
On this site, you can emulate a lot of iOS's devices online.

sij_a
  • 556
  • 4
  • 10
stepanVich
  • 180
  • 2
  • 10
4
  1. Run Ripple emulator(retired as of 2015-12-06) on Chrome
  2. Run iPadian on WineHQ
  3. Run QMole on Linux or Android
  4. Run XCode on PureDarwin
Neel
  • 49
  • 1
  • 4
2

Maybe, this approach is better, https://saucelabs.com/mobile, mobile testing in the cloud with selenium

0

As far as I know, there is no such a thing as iOS emulator on windows or linux, there are only some gameengines that enable you to compile same code for both iOS and windows or linux and there is a toolchain to compile iOS application using linux. none of them are realy emulator/simulator things. and to use that toolchain you need a jailbreaked iOS device to test binary file created using toolchain. I mean linux itself can't run the binary created itself. and by the way even in mac simulator is just an intermediate program which runs mac-compiled binary, since if you change compiling for iOS from simulator or the other way, all the files are rebuild. and also there are some real differences, like iOS is a case-sensitive operation while simulator is not.

so the best solution is to buy an iOS device yourself.

Ali1S232
  • 3,295
  • 1
  • 24
  • 42
-2

You might want to try screenfly. It worked great for me.

Miroslav Glamuzina
  • 4,201
  • 2
  • 15
  • 30
Sjaure
  • 9
  • 1
    This is really a comment, not an answer. With a bit more rep, [you will be able to post comments](//stackoverflow.com/privileges/comment). Thanks! – Miroslav Glamuzina Mar 19 '19 at 00:43
  • 2
    @MiroslavGlamuzina, there is nothing else to add to my suggestion. Not a long answer required. Cheers – Sjaure Mar 20 '19 at 14:58