Forum Discussion
Unable to launch the Surface DUO Emulator with Visual Studio
- Mar 20, 2020
Sivaprasad. G if you see the Surface Duo emulator, check the port showing in the title bar (it will say something like "Android Emulator - <build>:5556").
That should match the post listed by adb devices, even though the rest of the name may not match exactly. I've attached a screenshot of how it looks for me.
I'll add that whenever I use the Visual Studio batch file (run_vs.bat), I get a low-numbered port (like 5554 or 5556). I notice in your list it's 5578. Check that your batch file does not specify the -ports parameter (and also confirm the ANDROID_SDK_LOCATION is the one in C:\Program Files (x86\Android\android-sdk).
Hello tggmbi ,
Thank you for your prompt reply, I went through your solution and changed the ANDROID_SDK_LOCATION location as you mentioned,(same location which work with android studio) but still I wasn't able to successfully connect the emulator to Visual studio.
Sivaprasad. G
I am sorry that didn't work...
can you attach the script you are running and the script that works for you in android studio?
thanx,
Meir
- Mar 12, 2020
- Craig_DunnMar 13, 2020
Microsoft
Hi Sivaprasad. G , in the two batch files you shared above script that works for android studio.docx, the second script differs slightly from the first, in that a lot of the command line parameters are not "quoted". For example, the first one:
"%EMULATOR%" -verbose -accel auto %* -ports 5575,5579 -sysdir "%DIRNAME%\bin" -kernel "%DIRNAME%\bin\kernel-ranchu" -datadir "%DIRNAME%\bin\data" -initdata "%DIRNAME%\bin\userdata.img" -vendor "%DIRNAME%\bin\vendor-qemu.img" -system "%DIRNAME%\bin\system-qemu.img" -initdata "%DIRNAME%\bin\userdata.img" -data "%DIRNAME%\bin\userdata.img"
versus the second one:
"%EMULATOR%" -verbose -accel auto %* -sysdir %DIRNAME%\bin -kernel "%DIRNAME%\bin\kernel-ranchu" -datadir %DIRNAME%\bin\data -initdata %DIRNAME%\bin\userdata.img -vendor %DIRNAME%\bin\vendor-qemu.img -system %DIRNAME%\bin\system-qemu.img -initdata %DIRNAME%\bin\userdata.img -data %DIRNAME%\bin\userdata.img
Notice how the second one is missing "" around "%DIRNAME%\bin\data" and most of the other parameters? For most users, this does not cause an issue, but because your user folder has a space in it "C:\Users\Sivaprasad. G\" (as shown in the log file you shared), the space causes the command line to think there are two separate parameters, and you get an error:
invalid command-line parameter: G\SurfaceDuoEmulator\artifacts\\bin
which is because of the space before the G. Having quotes around the parameters that include %DIRNAME% should fix this issue with that .bat file.
Let us know if that helps?
- Mar 14, 2020
Hello Craig_Dunn ,
Thank you for the detail information and support , After changing the script, I can successfully launch the emulator by clicking the run.bat, However when I tried to run the sample app (surface duo Xamarin sample apps) I didn't find the Surface Duo emulator in option, (even I build, the solution )
I also tried following the steps
- removed the -ports 5575,5579 in run.bat ,
- replaced run.bat with the original xamarin script and modified the part ANDROID_PRODUCT_OUT as run_androidstudio.bat, the run.bat not throw any error , its successfully launch the emulator.
The same thing applied to run_vs.bat, and I can directly launch the emulator by clicking run_vs.bat
However still I wasn't able to successfully connect the emulator to Visual studio.
- tggmbiMar 12, 2020Former Employee
thanks!,
I have compared and its identical to what I have...
Next step 🙂 ,
can you send me the text that is in the console ?
(just ctrl-a then enter) so we can look for any errors.
Meir
- Mar 13, 2020
Hello tggmbi, Thank you for your prompt reply, please refer the attached file.