Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在Visual Studio Android emulator中调试Xamarin应用程序_Android_Visual Studio_Xamarin - Fatal编程技术网

无法在Visual Studio Android emulator中调试Xamarin应用程序

无法在Visual Studio Android emulator中调试Xamarin应用程序,android,visual-studio,xamarin,Android,Visual Studio,Xamarin,我正在尝试学习Xamarin,但是我的设置发生了一些问题,我无法再通过单击调试/运行按钮在模拟器中打开我的应用程序。它所做的只是打开或激活(如果已经打开)Android设备管理器 Visual Studio输出窗口(生成)状态为: 我已经创建了一个模拟器,它可以正常工作。当我尝试运行我的应用程序时,模拟器正在运行 此外,Android设备管理器中会弹出一个消息框,上面写着: Device Manager Device error: error: device unauthorized. Thi

我正在尝试学习Xamarin,但是我的设置发生了一些问题,我无法再通过单击调试/运行按钮在模拟器中打开我的应用程序。它所做的只是打开或激活(如果已经打开)Android设备管理器

Visual Studio输出窗口(生成)状态为:

我已经创建了一个模拟器,它可以正常工作。当我尝试运行我的应用程序时,模拟器正在运行

此外,Android设备管理器中会弹出一个消息框,上面写着:

Device Manager

Device error: error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
我不知道这意味着什么,也找不到涵盖这一点的文档

“adb kill server”没有任何效果。我在adb命令提示符中尝试了该命令,并且手动启动了一个管理命令提示符,并尝试终止和重新启动adbd。我曾尝试使用“adb keygen”重新生成密钥,但我无法实现任何效果

我在Windows10上

Xamarin Diagnostics窗口如下所示:启动VS后,单击Run,Android设备管理器将打开create new emulator(创建新仿真器)对话框,我取消该对话框并运行我已经创建的仿真器,等待它启动,然后再次单击Run(运行),这将向前打开ADM窗口

[D:]:                     FindVersionFile: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Version, result=False
[D:]:                     FindVersionFile: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Version.txt, result=True
[I:]:                     Found Xamarin.Android 9.3.0.23
[I:sdk]:                  Runtime path: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android
[I:sdk]:                  Framework path: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0
[D:]:                     ValidateAndroidSdkLocation: `C:\Program Files (x86)\Android\android-sdk`, result=True
[D:]:                     ValidateAndroidNdkLocation: ``, result=False
[I:]:                     Looking for Android NDK...
[I:]:                     Looking for Android SDK...
[D:]:                     ValidateAndroidSdkLocation: `C:\Program Files (x86)\Android\android-sdk`, result=True
[D:]:                     ValidateAndroidSdkLocation: `C:\Program Files (x86)\Android\android-sdk`, result=True
[D:]:                     ValidateJavaSdkLocation: `C:\Program Files\Android\Jdk\microsoft_dist_openjdk_1.8.0.25`, result=True
[I:]:                     Tracking android devices started
[D:]:                     Tracking avd started
[D:]:                     avd watcher *.ini path: 'C:\Users\Matt\.android\avd'
[D:]:                     avd watcher: got device list from avd with 0 devices
[D:]:                     TrackDeviceTask got: 
[I:]:                     Got new device list from adb with 0 devices
[I:]:                     Looking for Android SDK...
[D:]:                     ValidateAndroidSdkLocation: `C:\Program Files (x86)\Android\android-sdk`, result=True
[D:]:                     ValidateAndroidSdkLocation: `C:\Program Files (x86)\Android\android-sdk`, result=True
[D:]:                     TrackDeviceTask got: emulator-5554    offline
[I:]:                     Got new device list from adb with 1 devices
编辑:我找到了设备日志,这得益于用户帐户控制窗口,当我单击Run按钮时弹出该窗口,而Android设备管理器窗口未打开,它将打开ADM。错误的来源显示在日志的相关部分:

[19-08-10 23:56:44.17] Executing command: "C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe" "-s" "emulator-5554" "shell" "getprop" "emu.uuid"
[19-08-10 23:56:44.21] C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe result: 
StandardError: error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
ExitCode: 1
我修好了


我进入Android SDK管理器,卸载了所有东西,所有平台和工具。由于某种访问被拒绝的错误,它无法卸载“Android SDK Platform 28”,因此我重新启动时认为它会释放SDK进行卸载,但我意识到启动VS以便卸载会再次将其锁定(我不想弄清楚在没有VS的情况下启动Android SDK管理器的可执行文件是什么),所以我进入了VS安装程序,删除了整个“使用.NET进行移动开发”类别,然后我重新安装了它。然后我进入Android SDK管理器并安装了Android Emulator 29.0.11,它现在可以工作了。

我也有这个问题,删除设备并创建一个新设备似乎可以解决我的问题。我不确定这是否是一个永久性的修复,但它解决了我的问题,所以我想我会分享这个问题。你可以通过ri这样做右键单击Android设备管理器中的设备,然后单击删除。

Visual Studio Android Emulator?是否就是他们在某个时候分发的旧设备,您可以使用的图像数量非常有限?试试Android SDK附带的模拟器如何?@Cheesebaron我相信它是SDK中的模拟器,但我不是e当然可以。我怎么知道呢?模拟器版本是28.0.25-5395263(HAXM 6.2.0)看看如何创建一个新的Android仿真器。@JackHua MSFT你没有帮助,伙计。看看你的问题。似乎它与USB调试授权有关。我在最后的评论中给你链接,帮助你检查你创建的仿真器是否带有安卓SDK。原来这只是一个临时修复。我必须解除并重新插入因为这个问题一直在发生,所有的Android SDK都会一遍又一遍地更新。
[19-08-10 23:56:44.17] Executing command: "C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe" "-s" "emulator-5554" "shell" "getprop" "emu.uuid"
[19-08-10 23:56:44.21] C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe result: 
StandardError: error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
ExitCode: 1