2

We are building an Android SDK for some of our clients which will be distributed as an AAR. We want to integrate Crashlytics or some other crash reporting SDK to our SDK so that if any crash happens in our SDK, it gets reported to us(not to the client).

Our clients should be fine with adding the link of Fabric's maven repository in the project's build.gradle.

I want to understand if there is a way to do so??

Here Mike(a developer from Fabric) suggests that it is not possible and is not recommended without parent app being the deciding factor for initializing Fabric. In that case, if parent app is initializing the Crashlytics, will it work?

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
thrust
  • 225
  • 1
  • 8

1 Answers1

4

Mike (again) from Fabric.

Let me clarify that including Fabric in an SDK that is distributed to other apps will cause issues both for the app and your SDK. Do not ship Fabric in externally distributed SDKs.

Mike Bonnell
  • 16,181
  • 3
  • 61
  • 77
  • Thanks a lot Mike for this info. What kind of issues are we talking about? Assume that our client won't be using crashlytics on his parent app and we can request him to include maven repo path of Fabric in his build.gradle. If there are some problems arising from both SDK and parent app running independent crashlytics, In that case, I think we can have a consensus with our clients and request them not to use crashlytics with parent app. Are there any other problems that will arise?? Thanks again :) – thrust Jun 07 '17 at 13:33
  • 1
    Fabric can only be initialized once in any app, so if your SDK initializes Fabric, if the parent app also initializes Fabric, then depending on which gets initialized first, then that call would get the crash report. Also, while you may have consensus now, that could change and future devs may not know your SDK starts Fabric. There are privacy concerns. The end users of the client app, don't know that data could be shared with you as they can't make an agreement with you, only the app. Each client would need to agree that their code could show up in reports you get. Don't use Fabric. – Mike Bonnell Jun 07 '17 at 15:52