我正在尝试在 Xamarin.Forms(Android 和 iOS)上启用自动(无用户提示)提交曲棍球应用程序崩溃报告:
我在 MainActivity.cs 中有这个用于 Android 的:
var customCrashListener = new CustomCrashListener();
CrashManager.Register(this, "appId", customCrashListener);
CustomCrashListener 在哪里:
class CustomCrashListener : CrashManagerListener
{
public bool ShouldAutoUploadCrashes()
{
return true;
}
}
这不会发送任何崩溃报告,并且带有 Xamarin 文档的 HockeyApp 很薄。我也在努力让这项工作在 iOS 上运行。
最佳答案
包括下面的一些示例代码,以及在 SDK 上启用调试的语句。启用此功能后,您可以查看应用程序输出以查明问题所在。如果您在启动时直接崩溃,SDK 将没有时间发送崩溃报告。此外,如果 App ID 不正确,您会看到此行为。
您需要在监听器回调中包含 override 关键字,如下例所示。否则不会启用自动发送,仍然会出现崩溃提示。
Hockey.LogLevel = 3;
CrashManager.Register(this, AppID, new MyCrashManagerListener());
public class MyCrashManagerListener : CrashManagerListener
{
public override bool ShouldAutoUploadCrashes()
{
return true;
}
}
对于 iOS,您只需要在 StartManager()
之前在 AppDelegate.cs
中设置 BITCrashManagerStatus
:
var manager = BITHockeyManager.SharedHockeyManager;
manager.Configure(App_ID);
manager.LogLevel = BITLogLevel.Debug;
manager.CrashManager.CrashManagerStatus = BITCrashManagerStatus.AutoSend;
manager.StartManager();
关于c# - Xamarin.Forms + HockeyApp - 自动提交崩溃报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44436601/