I'm currently developing some mobile applications using PhoneGap for Android, testing only in 3 different kinds of smartphones, and using emulators to test on the others target phone resolutions. Later on I will probably use a iOS emulator.

I would like to know if I will have any problems with that.

  • 1
    I don't think secure is the word I would use here. Maybe: "Is it safe to trust emulators?" Or: "Can emulators ensure compatibility with mobile apps?" Jun 13, 2012 at 18:28
  • 3
    I don't think this question deserves a downvote, so I have upvoted it.
    – user41310
    Jun 13, 2012 at 19:33
  • 4
    Just to get this point out of the way - very few emulators are genuinely 100% accurate. However, that could very easily be a point that only the paranoid and a few specialists need to care about. I'm as interested as anyone in whether the emulators are good enough for, let's say, 99% confidence.
    – user8709
    Jun 13, 2012 at 20:06
  • 1
    Here is an article from Tech Crunch on android testing and the myriad of devices: techcrunch.com/2012/06/02/android-qa-testing-quality-assurance. One problem with your question will be that the answers will be subjective. I may think you need to test on more devices, while others may have different numbers and devices for different reasons. At the end it will ultimately be opinion.
    – jmq
    Jun 13, 2012 at 22:46

2 Answers 2


It really depends on what you're doing. If you're creating HTML5+CSS+JS for a web/PhoneGap app, it will probably be OK as initial test (unless you encounter bugs caused by PhoneGap itself). The reason is that underneath both the Android "Internet" browser and iOS' Safari, there is a WebKit core, which is somewhat cross-platform and mature enough.

If, on the other hand, you're writing native code, then don't trust the simulator/emulator. There is a myriad of things that can go wrong. An iOS Simulator example that has bitten me: iOS is case-sensitive. Mac OS X is case-preserving*. Guess what happens when you request a file from the iOS device that is in the wrong case. Tip: EXC_BAD_ACCESS. App - Rejected! (Of course, you should test on a real device way before sending the app for review, so did I, and there wasn't really a rejection).

I can't even start to enumerate the differences, and I'm certain Android emulators do have inconsistencies with the real devices, too. It's just a too complex system to work smoothly on a non-native CPU and in another host OS.

Simulators and emulators do not exist to replace testing devices, they exist to let you reduce testing time for things you'll test later more thoroughly on the devices itself and (possibly) to allow you to get a basic understanding of the framework without paying for the test.

The moral of the story is: don't trust simulators/emulators, they'll turn on you the moment you start depending on them. And from what I've seen, differences are usually very subtle, so finding them and debugging the app is hell.


I have never used PhoneGap but based on my experience with Android's, iOS', and Corona SDK's emulators you should be fine. Scaling and screen resolutions have always been pretty reliable but when it comes things like animation, and audio those can be really device specific for Android and the emulator is not always accurate.

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