MvvmCross DebugTrace là tất cả chuyển qua một thực hiện singleton của IMvxTrace
Mỗi nền tảng cung cấp triển khai khác nhau về điều này:
- nền tảng Windows sử dụng
Debug
dấu vết (vì Trace
chính nó là không có sẵn trên tất cả Windows nền tảng)
- Android sử dụng nhật ký kép của cả hai số
Debug
và Android log
- iOS sử dụng một bản ghi kép của cả
Debug
và iOS Console
này làm việc tốt trong các phiên bản trước đó của MvvmCross, đặc biệt là nơi những người liên quan trực tiếp tới mã nguồn MvvmCross và như vậy có thể gắn trực tiếp vào một trong hai gỡ lỗi hoặc phát hành MvvmCross nhị phân.
Tuy nhiên ... vì mọi người hiện đang sử dụng phiên bản Binaries phát hành từ Nuget - trong đó Debug
tất nhiên được biên soạn, điều này thường khiến mọi người hỏi "Cách sử dụng?"
Cách dễ nhất là để bạn ghi đè quá trình khởi tạo IMvxTrace trong lớp học Setup
của mình.
này rất dễ dàng để làm - ví dụ .:
protected override IMvxTrace CreateDebugTrace() { return new MyDebugTrace(); }
nơi MyDebugTrace
là một cái gì đó như:
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);
}
}
}
Nếu bạn muốn bao gồm triển khai khác nhau cho debug/release; nếu bạn muốn bật/tắt tính năng này khi đang chạy; nếu bạn muốn lọc theo số MvxTraceLevel
hoặc tag
; hoặc nếu bạn muốn sử dụng một số công cụ ghi nhật ký của bên thứ ba thì việc này cũng dễ dàng thực hiện bằng cách sử dụng C# đơn giản trên mỗi nền tảng.
Như thường lệ: câu trả lời nhanh và chi tiết từ Stuart. Cảm ơn! –
Xamarin Android: Thay vì nhìn vào cửa sổ đầu ra tiêu chuẩn VS , hãy vào Xem \ Đăng nhập thiết bị Windows \ Android khác. Bạn có thể lọc theo mvx để chỉ xem các dấu vết ứng dụng của mình. http: //docs.xamarin.com/hướng dẫn/android/triển khai, _testing, _and_metrics/android_debug_log –