Files
firebase-ios-sdk/Crashlytics
themiswangandAndrew Heard 19c1b15f7c [Crashlytics] update deprecated kernel api for visionPro (#11515)
* [Crashlytics] Fix build issues on visionOS

Fixed Firebase Crashlytics SDK build issues for visionOS, along with
corresponding unit test changes. This also resolves build issues with
the underlying Firebase Sessions SDK.

* Allow pod-lib-lint warnings for Firebase Sessions

* VisionOS deprecated kernel api update

* Moved `swift(>=5.9)` check to separate `#if` statement

* Move swift(>=5.9) check in SessionStartEventTests

* adding comment, declear and use internal macro

---------

Co-authored-by: Andrew Heard <andrewheard@google.com>
2023-07-10 14:32:35 -04:00
..
2022-04-28 10:06:21 -07:00

Firebase Crashlytics SDK

Development

Follow the subsequent instructions to develop, debug, unit test, and integration test FirebaseCrashlytics:

Prereqs

  • At least CocoaPods 1.6.0
  • Install cocoapods-generate
  • For nanopb and GDT:
    • brew install protobuf nanopb-generator
    • easy_install protobuf python

To Develop

  • Run Crashlytics/generate_project.sh
  • open gen/FirebaseCrashlytics/FirebaseCrashlytics.xcworkspace

You're now in an Xcode workspace generate for building, debugging and testing the FirebaseCrashlytics CocoaPod.

Running Unit Tests

Open the generated workspace, choose the FirebaseCrashlytics-Unit-unit scheme and press Command-u.

Changing crash report uploads (using GDT)

Update report proto

If the crash report proto needs to be updated, follow these instructions:

  • Update ProtoSupport/Protos/crashlytics.proto with the new changes
  • Depending on the type of fields added/removed, also update ProtoSupport/Protos/crashlytics.options. CALLBACK type fields in crashlytics.nanopb.c needs to be changed to POINTER (through the options file). Known field types that require an entry in crashlytics.options are strings, repeated and bytes.
  • Run generate_project.sh to update the nanopb .c/.h files.