如何在 Android 中使用没有 Xamarin 的单声道 运行 C# 代码?

How to run C# code using mono without Xamarin in Android?

我想创建一个使用 mono 运行time 到 运行 C# 代码(二进制而非应用程序)的程序。

我从 Unity 应用程序复制了 libmono.so,我正在使用此文档编写代码:

http://www.mono-project.com/docs/advanced/embedding/

它正在工作,但我有一个引用问题,我只能从 mscorlib.dll 访问 classes,我有 System.Reflection.Assembly class 的问题,它抛出异常,当我将它打印到控制台时,我看到:

System.MissingMethodException: Method not found: 'System.Reflection.Assembly.op_Inequality'

我可以修好吗?

我可以在 Android 的 C 二进制文件中使用单声道 运行time 吗?

PS。我正在使用 Android 进行测试。

编辑: 我找到了加载库的解决方案,它需要将环境变量 MONO_PATH 设置为库路径。

但我在组装方面仍有问题 class。

您遇到的 System.MissingMethodException 错误似乎是 .NET 配置文件不匹配错误,正如 here 所解释的那样。

Can i use mono runtime in C binary on Android?

是的,我猜是使用 NDK。但是您可以使用一些替代方案来代替自己滚动,例如 XmaDevLab.