3

我的 iOS 应用程序中有一个 iMessage 扩展程序。Crashlytics 可以捕获其崩溃吗?

我尝试将Fabric主应用程序中的相同条目添加Info.plist到 iMessage 扩展程序中Info.plist,并将以下内容添加到我的子类中(如Today 小部件集成MSMessagesAppViewController所推荐的那样):

- (instancetype _Nonnull)initWithNibName:(NSString * _Nullable)nibNameOrNil
                                  bundle:(NSBundle * _Nullable)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil
                           bundle:nibBundleOrNil];
    if (self)
    {
        // Start up Answers and Crashlytics
        [Fabric with:[NSArray<id> arrayWithObjects:
                      [Answers class],
                      [Crashlytics class],
                      nil]];
    }

    return self;
}

但是当我启动 iMessage 并选择我的 iMessage 扩展程序时,它只是挂在上一个屏幕截图上。它永远不会开始。

4

1 回答 1

6

来自 Fabric 的 Mike。

我们仅对 iMessage 扩展上的 Crashlytics 提供实验性支持。让事情正常进行:

  1. 将 Fabric Run Script Build Phase 添加到扩展的目标。将其复制并粘贴到您的主应用程序中。
  2. 将 Fabric 和 Crashlytics.framework 添加到扩展的链接库
  3. 添加Crashlytics.startWithAPIKey("YourActualApiKey")到您的扩展的视图控制器的 initWithCodermethod. 如果你目前没有initWithCoder方法,它最终应该是这样的:

    所需的初始化(编码器 aDecoder:NSCoder){ super.init(编码器:aDecoder)Crashlytics.startWithAPIKey(“yourApiKey”)}

参考:https ://stackoverflow.com/a/27153383/3975963

于 2016-11-04T15:52:39.610 回答