记 Firebase Crashlytics 接入遇到的坑

Firebase Crashlytics 接入官方文档:android https://firebase.google.com/docs/crashlytics/get-started?authuser=0#android

ios https://firebase.google.com/docs/crashlytics/get-started?authuser=0#ios

链接底部有测试文档  Android端调用 Crashlytics.getInstance().crash();

iOS调用[[Crashlytics sharedInstance] crash];就可以手动触发崩溃了

坑点:

Android:1.不要在OnCreate里触发崩溃,Crashlytics这时候还没传上去,会报

异常

2.如果之前有接老版本的firebase ,一定要把manifest的key删掉,就是这货

<meta-data android:name="io.fabric.ApiKey" android:value="24f0ea754622fc90392b5dfbcbd08121a3bf390a"/>

 

iOS 

1.Xcode10  一定要加$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)  不然不会有日志

2.dSYM  丢失问题https://firebase.google.com/docs/crashlytics/get-deobfuscated-reports?authuser=0  

将 Debug Information Format 设置为 DWARF with dSYM File后  一定要手动上传,不然还是会丢失

上传  第一种

第二种:命令行调用 

cmddSYM = "%sPods/Fabric/upload-symbols -gsp %sGoogleService-Info.plist -p ios %sarchive/SF.xcarchive/dSYMs" % (self.OutProjectPath, self.OutProjectPath, self.OutProjectPath)
subprocess.call(cmddSYM, shell=True)
建议使用第二种,因为上传dSYM需要6-15分钟不等(看网络),最好只在正式的对外包才上传,不然很浪费时间
原文地址:https://www.cnblogs.com/wang-jin-fu/p/10592157.html