我有调试Android项目的问题。我可以部署到设备并运行它,一切正常但如果我尝试调试,应用程序将部署到设备并且非常短暂地打开,启动屏幕会显示但应用程序会关闭。
我在Visual Studio 2015上使用Xamarin Forms。
设备正在运行Android Oreo(8.0.0)。运行Android 6.0.1的另一台设备正在调试。
输出显示如下:
InspectorDebugSession(11): StateChange: Start -> EntryPointBreakpointRegistered
InspectorDebugSession(11): Constructed
Android application is debugging.
InspectorDebugSession(11): HandleTargetEvent: TargetExited
InspectorDebugSession(11): Disposed
Couldn't connect to logcat, GetProcessId returned: 0
我检查了Logcat,它似乎遇到了查找FFImageLoading库的问题:
Time Device Name Type PID Tag Message
09-18 14:35:52.361 Huawei Nexus 6P Debug 1560 Mono AOT:
image '/usr/local/lib/mono/aot-cache/arm/FFImageLoading.Platform.dll.so'
not found: dlopen failed: library "/data/app/myapp.android.dev-
WEb1bz8edgF7vwx6uCoZ-A==/lib/arm/libaot-FFImageLoading.Platform.dll.so" not found
我已将FFImageLoading的Nuget包添加到我的项目中,Droid项目参考显示如下图所示:
答案 0 :(得分:10)
这对我有用: -
在项目属性中取消选择“使用共享运行时”> Android的 选项>包装属性
答案 1 :(得分:5)
我在Android 8.1和Visual Studio 2017 15.7.4中也遇到了这个问题。
通过三个步骤可以使其重新运行。
最后一步是从设备中删除以下应用程序:
完成这些步骤后,您无需禁用“使用共享运行时”,并且可以更快地进行部署和调试。
答案 2 :(得分:1)
这是在Visual Studio for Windows上使用Oreo和Xamarin Android的known issue。它显然适用于Visual Studio for Mac。它将在即将发布的版本中修复。与此同时,在上面的bug链接底部附近有一个工作(评论20)。
答案 3 :(得分:1)
答案 4 :(得分:0)
另一个原因是,如果您未在设备上启用USB调试,则VS 2017仍会识别您的手机并在手机上安装该应用程序。调试开始后,它将抛出此错误,并且不会继续调试。确保启用开发人员模式-> USB调试,如此处所述 https://docs.microsoft.com/en-us/xamarin/android/get-started/installation/set-up-device-for-development