Issue
I have recently started exploring Xamarin.Android with Visual Studio 2017. On Android SKD Manager window I can see different Android versions and under each version there are multiple android system images. Following the screen shot shows Android 9.0 with all available system images:
I am wondering which system image should I download as I am unaware about the differences. Can anyone please help me out or refer some link which contain details of each image? Thanks!
Solution
Android phone and tablets are covered by the "System Image", "Google API Image" and "Google Play Image" and not the Wear or TV OS images.
The Android phone/tablet image that you choice is about what your app needs to be tested with.
System Image:
This image only includes the basic/ASOP release of a specific API level. It is the most basic version. i.e. The browser included is just a thin UI shell around the WebView widget.
Google API Image:
Google APIs includes access to Google Play services.
You have development access to the Play services. As an example, you can test your apps against a NON-Google Play Store device, but if your app shares messages with Facebook, Twitter, etc... those apps will not be available as there is no Google Play Store on the device so you could not install them (I'll skip the side-loading option...)
But you do have access to Google services so things like "AdMob Lite" can be tested (the AdMob full version could be included in your app and thus tested on the basic System Image, but that would inflate your final APK size).
Google Play Image:
Google Play in the Play Store column includes the Google Play Store app and access to Google Play services
Now your emulator has access to the Play Store so other 3rd-party apps can be installed and your app can interact with them. So if you want to edit an Microsoft Word file that your app provides, your app can test to see if Word if installed, prompt the user to install it if needed, and share your .doc file to Word. Maybe your app is an image editor and you want other apps to share their images with you app, that can now be to be tested on an emulator vs. only on a physical device.
The Google Play images are the closest experience you can get to an OEM/vendor released device but in an emulator.
Note: As to whether you choice the x86 or the x86_64 version of the image, it is up to you. Personally I use the x86_64
versions since they are faster on my system. But if you are installing 3rd-party apps, not everyone supports x86_64
(nor x86
for that matter) if they are using native shared libraries within their app.
Android TV image:
These images are just for emulation of TV devices.
Wear OS image:
These images are just for smartwatch emulation.
Answered By - SushiHangover
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.