可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
I'm using the new VS Android Emulator with Android Studio:
https://www.visualstudio.com/en-us/features/msft-android-emulator-vs.aspx
It doesn't have Google Play Services installed... so I'm following this guide to install:
https://university.xamarin.com/resources/how-to-install-google-play-on-android-emulator
I've downloaded the proper Gapps file (in my case):
http://www.devfiles.co/download/7m2VdVjQ/gapps-kk-20140105-signed.zip
Now I've dragged and dropped the ZIP file onto the emulator... and it's just stalled at "copying file"... Is there anything else I need to be doing here in order to get Gapps installed? How long does this "install" usually take?
回答1:
I was trying it out yesterday myself and had the same problem. Apparently, non of the drag and drop functionality worked. So this, is what I did to resolve the issue:
- Use the Additional Tools (small >> icon) for the emulator and go to the SD Card tab.
- Select a folder on your computer to sync with the virtual SD card.
Pull from SD card
, which will create a folder structure on the selected folder.
- Now copy the Gapps fill to the 'Download' folder.
Push to SD card
. This will take a little while, and copy the zip file to your emulator.
- Run a commmand prompt, and go to
sdk\platform-tools
in your Android SDK location and run adb devices
.
- If you see the your emulator in the list, then skip to step 9.
- If you do not see emulator, run the following:
adb connect <emulator ip>:5555
You can find the emulator ip, from within the emulator, go to Settings -> About Phone -> Status and IP section.
- Next run,
adb shell
. This will give you a prompt to the android emulator.
- Confirm the gapps file is there:
ls /sdcard/Download
- Now run,
install_zip.sh /sdcard/Download/<flashablezip>.zip
This should begin the flashing process.
Hope this helps in resolving the issue.
回答2:
Now you can just drag&drop proper Gapps file to working Emulator and then you should see something like this:
回答3:
Drag and drop doesn't work if you start the emulator from Visual Studio when you are running Visual Studio as an administrator. To be able to drag and drop run the emulator from the start menu (not as administrator) not from Visual Studio.
回答4:
It seems that the emulator hangs trying to install files if it cannot find adb.exe.
Ensure you have the Android SDK installed
If you run regedit.exe and look at the HKEY_LOCAL_MACHINE\Software\Wow6432Node\Android SDK Tools reg key, there is a Path string value that points to a location on disk. Double check to make sure that there is a copy of adb.exe located in the platform-tools directory under that path.
Hope this helps.
回答5:
It looks like you're doing the right thing to get the Google Apps installed, but just in case, these instructions might help:
http://codesmells.net/2015/07/27/installing-the-google-play-store-in-the-microsoft-visual-studio-android-emulator/
回答6:
Found a solution on the web that works. The article suggests it only works for Android 5.1, I haven't tried Marshmallow.
http://www.rajapet.com/2016/03/adding-google-play-services-to-visual-studio-android-emulator.html
Start "Visual studio emulator for android" from the start menu
Create a new emulator for Lollipop, 5.1.1 (API Level 22), start it up
As VS emu runs under x86, we need the "ARM Translator", found on this page:
http://www.techbae.com/download-install-arm-translation-v1-1-zip-genymotion/
([TechBae.com]Genymotion-ARM-Translation_v1.1.zip)
Drag the file to the emulator window, close and restart the emulator if it doesn't automatically.
- Install gapps from http://www.teamandroid.com/gapps/, eg gapps-lp-20150314.zip
Just download, drag to emulator, restart
Wait for app optimization to finish
Open Play Store, ignore any errors. If play store hangs, kill it and start again
Sign in
Expand the side menu
Go to settings
Scroll down to Build version, click/tap. You should get a message that a new version of the play store will be installed
Wait for the XDE.exe process to stop downloading
Restart the emulator
Go back to play store, side menu, click Build version - Ensure it is up to date. If not, let it download
Install an app that uses play services, eg Maps to verify
回答7:
I tried all the previous answers, including the accepted one about running the install_zip.sh shell script, but nothing worked right for me for VS emulators of Android Lollipop (5.1) and Marshmallow (6). The problem seems to be also that Gapps has now some native code, processor specific, and most Gapps packets available for download are compiled for ARM processors. I tried OpenGapps which does have processor specific packages, but their complex installation scripts didn't work for me in VS emulators.
I finally found a Gapps package prepared for ASUS Zenphone 2, which does have an Intel processor - specifically I downloaded the package recommended here, and that installed fine with just drag and drop on Visual Studio emulator for Android 5.1
回答8:
Following the instructions above, I could NOT get Google Play Store to launch successfully on my Marshmallow 6.0.0 Tablet API-23 VM in VS Emulator for Android.
I've tried all the troubleshooting methods mentioned above to no avail.
What finally worked for me was installing (dragging & dropping) the PREVIOUS version of GAPPS (gapps-lp-20150314.zip) for Android 5.1 Lollipop API-22 in my Marshmallow 6.0.0 VM.
Worked like a charm!
http://www.teamandroid.com/gapps/
http://www.devfiles.co/download/fAgtiEoX/gapps-lp-20150314.zip
回答9:
Tomasz Cielecki pointed out a solution that involves installing gapps twice.
First install the gapps downloaded from here, reboot the system and then install gapps again with a version downloadable from here.
At least this worked well for me.
回答10:
You could just use an Android Emulator image (AVD), similar to a VM image, one that has a Google Play services installed. That would be easier than trying to install it in the emulator. Usually, you can see this Android Studio under Tools > Android > AVD Manager and create a Virtual Device and select from the images which has Google Play Services already.
回答11:
Now Docker + Hyper-V + Android Emulator is possible without needing VS Android Emulator (in fact they seem to be a discontinued job).
Now the Google's emulators work well even with Hyper-V activated.
More info here about how to make it work here (spoiler: it is a simple tick in a checkbox) https://android-developers.googleblog.com/2018/07/android-emulator-amd-processor-hyper-v.html