2016-11-04 35 views
3

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

我已经尝试添加从我的主要应用程序的Info.plist相同Fabric进入我的iMessage扩展的Info.plist,并添加以下到我的MSMessagesAppViewController子类(如推荐Today widget intregation):

- (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扩展,它只是挂在以前的屏幕截图上。它从不开始。

回答

7

Mike从面料这里。

我们仅对iMessage扩展上的Crashlytics提供实验支持。为了使事情有效:

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

required init(coder aDecoder: NSCoder) { 
    super.init(coder: aDecoder) 
    Crashlytics.startWithAPIKey("yourApiKey") 
} 

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

+0

的链接似乎被打破。 iMessage扩展支持的任何更新? – nrj

+1

修改了我的答案@nrj以提供更多详细信息。 –

+0

它是否也适用于iMessage应用程序(不是扩展名)? –

相关问题