直到最近我才使用Xamarin Insights。我从项目中删除了它,因为它显着增加了启动时间和应用程序大小。所以我留下了来自微软的2个选项Hockeyapp和Mobile Center。这两个问题是他们没有任何报告功能来报告捕获的异常,通常是你在xamarin表单项目中的try catch中要做的事情。
非常令人失望。
xamarin insight有this并且它工作正常。我想问一下如何在表单项目中报告异常?应用洞察是一种选择。我在其他.net项目中使用过,但UI确实不太可用。这里的github上甚至还有一个帖子
https://github.com/Microsoft/ApplicationInsights-Xamarin/issues/26
微软表示,我们正在研究它一年或更长时间,从不提供任何东西并不断弃用。
答案 0 :(得分:3)
我们使用移动中心报告问题。基本上在每个catch语句中,我们使用静态类来报告问题,如:
public static class EventTrace
{
public static void Trace(string menuName, string actionName, Dictionary<string, string> parameters = null)
{
try
{
Dictionary<string, string> tmp;
if (parameters != null)
tmp = new Dictionary<string, string>(parameters);
else
tmp = new Dictionary<string, string>();
tmp.Add("GUID", MobileCenter.InstallId.ToString());
Analytics.TrackEvent(menuName + " - " + actionName, tmp);
}
catch (Exception ex)
{
Analytics.TrackEvent("Event Trace - Error creating event", new Dictionary<string, string> { { "Exception", ex.ToString() } });
Analytics.TrackEvent(menuName + " - " + actionName, parameters);
}
}
public static void Error(string menuName, string exception)
{
var parameters = new Dictionary<string, string> { { "Exception", exception } };
var tmp = new Dictionary<string, string>(parameters);
try
{
tmp.Add("GUID", MobileCenter.InstallId.ToString());
Analytics.TrackEvent(menuName + " - Error", tmp);
}
catch (Exception ex)
{
Analytics.TrackEvent("Event Trace - Error creating event", new Dictionary<string, string> { { "Exception", ex.ToString() } });
Analytics.TrackEvent(menuName + " - Error", parameters);
}
}
}
我们有跟踪事件和catch错误事件。在移动中心,我们基本上可以搜索&#34;错误&#34;事件标签中的陈述。
它对我们有用,希望它适合你!