Xamarin 应用程序在启动时立即关闭

Xamarin App Closes immediately on startup

你好
我已经用 xamarin 工具安装了 VS studio 2017 community 并创建了一个新的 Android 项目。当我尝试启动应用程序时,它会立即打开和关闭(眨眼之间)并且没有出现错误。 我使用 Android 设备监视器查看问题所在,我得到了这个

 04-13 17:50:41.162: E/AndroidRuntime(16229): Process: xApp1.xApp1, PID: 16229
 04-13 17:50:41.162: E/AndroidRuntime(16229): java.lang.RuntimeException: Unable to get provider mono.MonoRuntimeProvider: java.lang.RuntimeException: 
 Unable to find application Mono.Android.DebugRuntime!
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ActivityThread.installProvider(ActivityThread.java:5536)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ActivityThread.installContentProviders(ActivityThread.java:5106)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5031)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ActivityThread.access00(ActivityThread.java:185)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1628)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.os.Handler.dispatchMessage(Handler.java:111)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.os.Looper.loop(Looper.java:194)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ActivityThread.main(ActivityThread.java:5847)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at java.lang.reflect.Method.invoke(Native Method)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at java.lang.reflect.Method.invoke(Method.java:372)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1010)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
 04-13 17:50:41.162: E/AndroidRuntime(16229): Caused by: java.lang.RuntimeException: Unable to find application Mono.Android.DebugRuntime!
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at mono.MonoRuntimeProvider.attachInfo(MonoRuntimeProvider.java:47)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ActivityThread.installProvider(ActivityThread.java:5533)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   ... 11 more
 04-13 17:50:41.162: E/AndroidRuntime(16229): Caused by: android.content.pm.PackageManager$NameNotFoundException: Mono.Android.DebugRuntime
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at android.app.ApplicationPackageManager.getApplicationInfo(ApplicationPackageManager.java:296)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   at mono.MonoRuntimeProvider.attachInfo(MonoRuntimeProvider.java:41)
 04-13 17:50:41.162: E/AndroidRuntime(16229):   ... 12 more

尝试以下操作:

  1. adb uninstall <package name>

  2. adb uninstall Mono.Android.DebugRuntime

  3. adb uninstall Mono.Android.Platform.ApiLevel_X(其中 X 是 API 级别)

这应该会将您的环境设置为全新状态,并且重新部署应该会起作用。如果您需要获取软件包列表以查看安装的 API 级别,请使用 adb shell pm list packages -f

我找到了解决方案。
我的设备是魅族 M2 Note,上面有 flymeOs 5 (android 5.1)。
因为它有 2 种模式:正常模式和 访客模式,调试时,应用程序会以两种模式安装。所以我要做的就是登录访客模式并删除应用程序。