39 lines
1.3 KiB
Markdown
39 lines
1.3 KiB
Markdown
# 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](https://github.com/square/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.
|