2017-02-19 1 views
0

Ich brauche einige C# -Code auf Android x86_64 Eibisch-Plattform laufen - meist NUnit 2 Tests und einige Konsolenanwendungen (bitte nicht fragen, warum :)Mono --trace Option funktioniert nicht auf Android x86_64

Ich habe herausgefunden, Mono 4.4.2 mit Android NDK r13b zu kompilieren, ich habe die bin-Ordner (mit Mono-Sgen und andere Binärdateien), ich habe die Lib-Ordner mit all diesen libmonosgen-2.0.so und andere . Ich habe eine separate Frage zu einigen Gebäude- und Konfigurationsproblemen - What is the proper way to install Mono 4.4.2 on Android x86_64?, also wäre ich sehr dankbar, wenn Sie dort auch nachsehen würden.

Im Allgemeinen - es funktioniert. Nach der Einstellung LD_LIBRARY_PATH & MONO_PATH ich tun kann: mono [app.exe], ich einfache Programme aus dem Quellcode kompilieren kann, kann ich nunit-console.exe von lib/Mono/4.5 Ordner und sogar meine einfach laufen Tests laufen.

Probleme beginnen, wenn ich versuche, einige anspruchsvollere Tests zu verwenden, die mehr Referenzen verwenden, natürlich sind sie alle plattformübergreifend und funktionieren unter Linux zum Beispiel. Ich konnte keinen einfachen Test ausführen, der EPPlus.dll verwendet, um MS Excel-Dateien zu lesen - ich sehe den Läuferbildschirm, manchmal versucht er, etwas zu laufen, manchmal nicht. Wenn ich versuche, eine andere Runner-Version zu verwenden, funktioniert es einfach nicht, ohne ein Wort. Ich vermute, das hängt alles mit Frameworks-Versionen, Assembly-Versionen und so weiter zusammen. Aber woher weiß ich das?

enter image description here

Also meine Hauptfrage ist - wie kann ich wissen, was passiert ist? mono --trace druckt nichts, irgendwelche ideen warum? Welche Instrumente habe ich in solchen Szenarien, wie kann ich etwas herausfinden? Es ist das gleiche mit Emulator und einem echten Gerät.

Vielen Dank.

+0

Es fühlt sich an, als ob Sie sehr ähnliche Arbeit mit den Interna von Mono machen, also können Sie vielleicht bessere Hilfe bekommen, wenn Sie dem # mono-dev-Kanal (oder mono's gitter channel) statt stackoverflow beitreten – knocte

+0

Danke, ich werde es versuchen Dies! Ich habe aber auch das Gefühl, dass dies irgendwie mit dem Android (NDK) zusammenhängt, da es unter Linux gut funktioniert. Also werde ich mein Glück dort auch versuchen :) – natan337

Antwort

0

Nun, die "- Trace" -Option funktioniert in Android. Es wird einfach nichts gedruckt stdout, logcat wird stattdessen verwendet (markiert als 'mono'). Ich nehme an, es gibt #ifdef irgendwo, die printf mit etwas Anroid-related definiert.

Verwandte Themen