How to disable Crashlytics iOS library using a flag?

后端 未结 2 344
感情败类
感情败类 2021-01-18 15:58

I am using latest Crashlytics library for iOS. I am looking to disable crashlytics using a single flag. How can I do that?

PS: I am not using set API key method as p

2条回答
  •  有刺的猬
    2021-01-18 16:31

    Are you trying to prevent Crashlytics from running, or prevent the SDK from getting compiled in at all?

    To prevent it from running, you can not make the Crashlyitcs call to get it going, generally done in your app delegate.

    For example, if you're using Crashlytics before Fabric, just comment out the following line:

    [Crashlytics startWithAPIKey:];
    

    If you are using Fabric, you'd want to comment out the following line:

    [Fabric with:@[CrashlyticsKit]];
    

    If you're using another Fabric service, remove 'CrashlyticsKit' from the services for Fabric to launch with. So for example, you'd want to change:

    [Fabric with:@[TwitterKit, CrashlyticsKit]];
    

    to:

    [Fabric with:@[TwitterKit]];
    

    Since you want this done with a flag, there are a number of ways to go about this, One way is to use a processor macro. For example, if you're just trying to disable Crashlytics while running in XCode, you can use DEBUG, a preprocessor macro that's set to 1 in XCode projects by default, in the following way:

    #if DEBUG == 0 [Crashlytics startWithAPIKey:]; #endif

    You can add your own preprocessor macros for whatever contexts you'd like by opening your project file (.xcodeproj) in XCode, select your target, select the "Build Settings" tab, scroll to the "Apple LLVM 6.0 - Preprocessing" section, and change the entries under "Preprocessor Macros". You can add them for any project configuration, however you'd like.

提交回复
热议问题