【问题标题】:Xamarin.Forms + HockeyApp - auto submit crash reportsXamarin.Forms + HockeyApp - 自动提交崩溃报告
【发布时间】:2017-11-10 05:17:53
【问题描述】:

我正在尝试在 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 上完成这项工作。

【问题讨论】:

    标签: c# xamarin.ios xamarin.android xamarin.forms hockeyapp


    【解决方案1】:

    包括下面的一些示例代码,以及在 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,您只需在 AppDelegate.cs 之前设置 BITCrashManagerStatus StartManager()

    var manager = BITHockeyManager.SharedHockeyManager;
    manager.Configure(App_ID);
    manager.LogLevel = BITLogLevel.Debug;
    manager.CrashManager.CrashManagerStatus = BITCrashManagerStatus.AutoSend;
    manager.StartManager();
    

    【讨论】:

    • 谢谢,这很好用。在 Xamarin.Forms v2.3.4.247 中测试
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-11
    相关资源
    最近更新 更多