1

我写这篇文章是因为我不知道我能做什么。

我正在为我的公司开发一个有很多用户的大型 iOS 应用程序;记录错误和崩溃我正在使用Microsoft MobileCenter(分析和崩溃版本 0.6),Xamarin.Forms 版本。2.3.3.168 和很多组件,例如 Xam.Plugins、SQLite、PCLStorage、SharpZipLib。

根据 MobileCenter 请求,应用程序的最低目标版本为 8。

除了小错误之外,大问题很难解释。我想问你一个建议。

该应用程序运行良好。如果我测试它,我不会有任何问题。同时,该应用程序因任何明显原因而崩溃。MobileCenter 中没有日志、没有崩溃、没有任何内容。从这一刻起,无法启动应用程序,我也没有任何关于它的日志:我可以看到启动画面,但之后应用程序再次崩溃。用相机拍照后似乎出现了问题。

当应用程序启动时,它会删除图像(如果文件夹中有任何图像),将文件发送到我的服务器,并使用CrossDeviceInfo检查操作系统版本是什么。然后调用第一页。

在将我的设备连接到 iMac 后,我试图了解问题以读取 Xcode 中的日志,但这很难理解。

XCode 设备

如果我尝试阅读查看设备日志,我会发现我的应用程序发生了一次崩溃,但日志对我来说仍然难以理解。

查看设备日志

然后从 Xcode 我尝试打开Organizer并在崩溃...

组织者

如果我将存在此问题的设备连接到 iMac 并在其上部署应用程序,则应用程序运行正常。我怎样才能理解问题在哪里解决?

更新

在我的App.xaml.cs初始化MobileCenter中,如下代码:

public partial class App : Application
{
    public App() {
        // my code
    }

    protected override void OnStart()
    {
        MobileCenter.LogLevel = LogLevel.Verbose;
        MobileCenter.Start(typeof(Analytics), typeof(Crashes));
    }
}
4

1 回答 1

1

是本杰明。我已经在我们的对讲机中回复了您的问题,但我想在这里回复您的问题。

这种情况不是真正的崩溃,而是操作系统杀死了应用程序进程。SDK 作为应用程序进程的一部分运行,因此无法确定甚至发生了这种终止,因为该进程立即被完全删除。从技术上讲,从 SDK 的角度来看,这不是崩溃,它可以检测并提供详细信息。每个单独的 3rd 方 SDK 都有这个限制,并且没有办法绕过它,因为 Apple 不提供这样做的技术可能性。

此外,您提供的崩溃报告均未包含对 Mobile Center 的任何引用,因此我可以排除我们的 SDK 是导致死机的原因。

我希望你找到问题的原因。

于 2017-03-17T17:46:17.027 回答