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. |