4 ms·
An important correction: Unlike iOS, Android does not come with a simulator. It has an emulator. That explains many of the differences in startup speed and perf
by mncolinlee 13y ago
An important correction: Unlike iOS, Android does not come with a simulator. It has an emulator. That explains many of the differences in startup speed and performance. A simulator runs natively and does not have to emulate the ARM machine code on your x86 device. The Android emulator is theoretically more accurate and runs the entire Android OS, but the cost penalty is huge. Therefore, most Android developers test small changes initially on a device.
http://programmers.stackexchange.com/questions/134746/whats-the-difference-between-simulation-and-emulation http://programmers.stackexchange.com/questions/134746/whats-...
- krschultz 13y agoExcellent point. Running the x86 images in the emulator is much faster (and Google recently released x86 images w/ Google APIs in them). Genymotion is a decent alternative to the 1st party emulator, it runs significantly faster.
- karmelapple 13y agoGenymotion is as close to the speed of the iOS Simulator as you can get today. However, Genymotion is x86-based, so ARM libraries you use in your app that are designed to run on an ARM device will not work in Genymotion on your computer. However, if your use of those is limited to just a few Activities in your Android app, you should be able to do a lot of things with Genymotion, and just tiptoe around trying out that Activity on your computer and instead use it on-device.
- TheHippo 13y agoBy the time you use special binary ARM libraries you should have figured out the difference between an emulator and a simulator and also maybe discovered the possibility to deploy to a real device.
- chimeracoder 13y ago> Therefore, most Android developers test small changes initially on a device. That's also because deploying an APK on a test device (or several devices) is way easier than deploying an IPA on an iOS device. As someone relatively new to iOS this past month or so, I was shocked by the number of hoops I have to jump through just to take a piece of code I've written and put it on a device that I own and is sitting right next to me[0]. Coming from Android development, I never thought twice about this - it's easy to push the APK to my phone as part of the build process, and I don't even have to plug my device in to do so. [0] Including shelling out $99 for a certificate that gives me the permission to do so.
- gress 13y agoHow is it easier than just pressing the build and run button on XCode?
- donut2d 13y agoI think the problem he is having is with how to get to that point. There is a lot of setup to get to the point of just being able to hit the build and run button in Xcode. Of course, once that work is out of the way it's super easy.
- gress 13y agoWhat setup work? Install Xcode from the App Store, and log in with your developer account? There is less involved than just downloading and unzipping the Android SDK
- wattson12 13y ago(ignoring the creating the developer account) - create certificate(s) - create provisioning profile(s) - hit refresh in Xcode and hope it pulls in the profiles you want to use (maybe only an issue if you're a member of multiple teams) - modify build settings once you've done that its simple but there is definitely a setup overhead with Xcode and devices
- impy 13y agoYou can also use http://www.bluestacks.com http://www.bluestacks.com for debugging/testing your applications.