我需要在 Android x86_64 Marshmallow平台上运行一些C#代码 - 主要是NUnit 2测试和一些控制台应用程序(请不要问为什么:)
我已经想出使用Android NDK r13b编译 Mono 4.4.2 ,我得到了bin文件夹(使用mono-sgen和其他二进制文件),我得到了包含所有这些libmonosgen的lib文件夹-2.0.so和其他人。关于一些构建和配置问题,我有一个单独的问题 - What is the proper way to install Mono 4.4.2 on Android x86_64?所以如果你也看一下我会非常感激。
总的来说 - 它有效。设置 LD_LIBRARY_PATH & MONO_PATH 我能做到: mono [app.exe],我可以从源代码编译简单的程序,我可以从 lib / mono / 4.5 文件夹运行nunit-console.exe,甚至我的简单测试运行。
当我尝试运行一些使用更多引用的更复杂的测试时会出现问题,例如,它们都是跨平台的,并且可以在Linux中运行。我无法运行使用EPPlus.dll读取MS Excel文件的简单测试 - 我确实看到了跑步者屏幕,有时它会尝试运行某些东西,有时候不会。当我尝试运行不同的跑步者版本时 - 它根本不起作用,一言不发。我怀疑这一切都与Frameworks版本,汇编版本等有关。但我怎么知道?
所以我的主要问题是 - 我怎么知道发生了什么? mono --trace什么都不打印,任何想法为什么?在这种情况下我有什么工具,我怎么能想出什么呢?它与模拟器和真实设备相同。
非常感谢。
答案 0 :(得分:0)
嗯,' - 追踪'选项在Android中有效。它只是不打印标准输出的任何内容,而是使用 logcat (标记为' mono')。我想在#ifdef的某个地方重新定义了 printf 与Anroid有关的东西。