android - MonoDroid 上的 MonoGame - 共享运行时初始化错误无法加载库 "libmonosgen-2.0.so"

标签 android mono xamarin.android monodevelop monogame

我有一个简单的 Android MonoGame 项目,使用 MonoDevelop 构建。它是 XNA 示例游戏的一个端口,它在模拟器中的一个设备上运行良好,但在另一台设备上部署时出现此错误:

shared runtime initialization error: Cannot load library: load_library(linker.cpp:745):
library "/data/data/Mono.Android.DebugRuntime/lib/libmonosgen-2.0.so" not found

错误发生在启动画面出现在设备上之后。

代码没有改变,它可以在一台设备上工作,但不能在另一台设备上工作。设备之间的主要区别是屏幕分辨率。 320x480 分辨率的设备没问题,但 480x800 分辨率的设备会报错。这两款设备在 AVD 中都被定义为以 Android 4.2 API 级别 17 为目标并使用 Intel Atom x86 CPU/ABI。我为 480x800 设备提供了 AVD 允许的尽可能多的内存(768 MB - 高于此值但它无法启动)。

我认识别人reported a similar error之前,我已经尝试过那里的建议(关闭“快速部署”并重新部署,增加设备上的可用空间)但得到相同的错误。它始终适用于 320x480,但不适用于更大的屏幕设备。

最后说明 - 我使用的是免费版的 MonoDroid。

最佳答案

如果有人遇到同样的错误,解决方案中有更多详细信息 on the Xamarin site .简而言之,当我卸载调试运行时然后重新安装我的游戏时,错误就会消失:

$ adb uninstall Mono.Android.DebugRuntime
$ MSBuild /t:Install YourProject.csproj

(或者直接从 IDE 安装游戏)

关于android - MonoDroid 上的 MonoGame - 共享运行时初始化错误无法加载库 "libmonosgen-2.0.so",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15100696/

相关文章:

android - canvas.DrawRect 导致应用程序自动退出

使用大部分堆的 Android 应用程序,无法成功识别内存泄漏

android - AdMob 激励视频广告错误(异常)

.net - 在 Mono 上使用 Z3 托管 API

android - 如何在 Android 中将代码执行延迟 X 时间

android - 在 XML 中的自定义 ScrollView 上膨胀类时出错?

javascript - 想要使用 cordova/android 禁用 android 的 HardBack 按钮

java - 为什么在 Java 中使用静态辅助方法不好?

c# - C++ .NET DLL 包装到 C# COM DLL(使用 Mono 构建)

.net - 我可以使用 Linux/Mono 来部署 aspnet web 应用程序吗?