And*_*son 10 c# android xamarin.android xamarin xamarin.forms
当我为我的Xamarin.Forms Android项目启动调试会话时,它会立即崩溃,并显示以下错误消息:
java.lang.RuntimeException:无法获取提供者mono.MonoRuntimeProvider:java.lang.NullPointerException:尝试在空对象引用上调用虚方法'java.lang.String java.io.File.getAbsolutePath()'
我正在使用Shared Runtime和Fast Deploy,虽然停用它们似乎并不能解决我的问题.
但是,解决我的问题的方法是从设备手动卸载应用程序.然后它将适用于一个调试会话,但是一旦我启动下一个调试会话,就会返回相同的错误.
在我看来,如果它在以前的调试会话中安装,应用程序在某种程度上无法找到Mono Shared Runtime,但我不能为我的生活看到原因.
以下是尝试修复此类问题时要执行的步骤:
Mono Shared Runtime一个,但尝试删除所有这些项目不会有什么坏处):
如果这些不能解决问题,您应该从错误日志中发布更多信息。我正在寻找的是在主要异常定义之后的几行以查看堆栈跟踪,如下所示(主要是以at开头的行):
java.lang.RuntimeException: Unable to start activity ComponentInfo{plp.cs4b.thesis.drawitapp/plp.cs4b.thesis.drawitapp.PlayGame}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String plp.cs4b.thesis.drawitapp.Player.getName()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
at android.app.ActivityThread.access$800(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5221)
at java.lang.reflect.Method.invoke(Native Method)
Run Code Online (Sandbox Code Playgroud)
使用 Xamarin 和 Android 时,错误可能并不总是出现在异常似乎指向的地方。这就是为什么在这种情况下值得深入研究它的原因。
| 归档时间: |
|
| 查看次数: |
4407 次 |
| 最近记录: |