私はMvvmCrossを使用しています。 ライブラリでMvx.Traceメソッドの使用法がわかりますが、コンソール/出力ウィンドウへの出力はありません。 使い方は?MvvmCross Mvx.Trace usage
p.s.コンパイラ定数Trace = trueを設定しました。
ありがとうございました。
私はMvvmCrossを使用しています。 ライブラリでMvx.Traceメソッドの使用法がわかりますが、コンソール/出力ウィンドウへの出力はありません。 使い方は?MvvmCross Mvx.Trace usage
p.s.コンパイラ定数Trace = trueを設定しました。
ありがとうございました。
MvvmCross DebugTraceはすべてIMvxTrace
のシングルトンの実装を経由してルーティングされ、各プラットフォームには、このの異なる実装を提供します。
Trace
自体は、すべてのWindows上で使用できないため、Windowsプラットフォームは、(Debug
トレースを使用プラットフォーム)Debug
とAndroidのデュアルログを使用します。log
Debug
とiOSのデュアルログを使用していますConsole
これは、人々がMvvmCrossをどちらかのデバッグに直接結合するか、または解放することができるようにMvvmCrossのソースコードに直接リンクし、特にMvvmCrossの以前のバージョンでうまくバイナリ。
しかし、人々は現在、ヌゲットのリリースバイナリを使用しています - Debug
はもちろんコンパイルされていますが、これはしばしば人々に「どのように使用するか?
最も簡単な方法は、Setup
クラスのIMvxTraceの初期化をオーバーライドすることです。
これを行うのは簡単である - 例えば:
MyDebugTrace
のようなものである
protected override IMvxTrace CreateDebugTrace() { return new MyDebugTrace(); }
:あなたは、デバッグ/リリースの異なる実装を含めるしたい場合
public class MyDebugTrace : IMvxTrace
{
public void Trace(MvxTraceLevel level, string tag, Func<string> message)
{
Debug.WriteLine(tag + ":" + level + ":" + message());
}
public void Trace(MvxTraceLevel level, string tag, string message)
{
Debug.WriteLine(tag + ":" + level + ":" + message);
}
public void Trace(MvxTraceLevel level, string tag, string message, params object[] args)
{
try
{
Debug.WriteLine(string.Format(tag + ":" + level + ":" + message, args));
}
catch (FormatException)
{
Trace(MvxTraceLevel.Error, tag, "Exception during trace of {0} {1} {2}", level, message);
}
}
}
。実行時にこれをオン/オフに切り替えたい場合は、 MvxTraceLevel
またはtag
をフィルタリングする場合は、また、サードパーティのロギングエンジンを使用する場合は、各プラットフォームで簡単なC#を使用するのも簡単です。
スチュアートが提供している現在のソリューションでは、iOSの問題にぶつかります。
Debug.WriteLine
を使用してMvxTraceを使用してVSでデバッグセッションを実行すると、アプリのログ記録の冗長度によって処理が非常に遅くなることがあります。 Trace.WriteLinte
と同じです。 影響を受けていない代わりにConsole.WriteLine
(MvvmCross MvxDebugTrace
と同じ)を使用してください。
は「より多くの」詳細については、このXamarinのバグの項目を参照してください:https://bugzilla.xamarin.com/show_bug.cgi?id=13538#c4
いつものように:スチュアートから、高速かつ詳細な回答。ありがとう! –
Xamarin Android:標準のVS出力ウィンドウを見る代わりに、 View \ Other Windows \ Androidデバイスロギングに行きます。 mvxでフィルタリングすると、アプリのトレースのみを表示できます。 http://docs.xamarin。com/guides/android/deployment、_testing、_and_metrics/android_debug_log –