Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crashlytics: Multiple Firebase projects at runtime and DSYMs files for them #12870

Closed
ppave opened this issue Apr 30, 2024 · 7 comments
Closed

Comments

@ppave
Copy link

ppave commented Apr 30, 2024

Description

Currently we use multiple Firebase projects that we connect to at runtime.
Let's say eu and us with corresponding GoogleService-Info and GoogleService-Info-us plists.
And we get auto-uploading DSYMs working only for the eu Firebase project, as I understand cause GoogleService-Info plist is used for DSYM by default if no explicit mentioning.

Build Phases script:
"${BUILD_DIR%Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run"
Input Files:
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}
$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)

Following current DSYM instructions, even if I add paths to the both GoogleService-Info and GoogleService-Info-us in Input Files, it doesn't work.

Any ways how to get it working? Thanks.

Reproducing the issue

No response

Firebase SDK Version

10.23.0

Xcode Version

15

Installation Method

Swift Package Manager

Firebase Product(s)

Crashlytics

Targeted Platforms

iOS

Relevant Log Output

No response

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet
Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet
Replace this line with the contents of your Podfile.lock!
@google-oss-bot
Copy link

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

@rizafran
Copy link
Contributor

Thanks for reporting, @ppave. Could you share the complete run script you're using or a reproducible app?

@ppave
Copy link
Author

ppave commented May 2, 2024

All the above.
It works good for the default GoogleService-Info plist.

But the app has several GoogleService-Info plist files and user chooses one to connect at runtime.
But looks like DSYM configuration happens only for one GoogleService-Info plist file at compile time.

@themiswang
Copy link
Contributor

Hey @ppave,

Thank you for reaching our, currently Crashlytics only supports for Firebase default app. You might get confused with DSYM upload process vs crash uploading process. For DSYM upload there is a way you can upload your symbol files to multiple firebase project but I don't think it is related to you problem. For crash uploading all crashes will upload to the GoogleService-Info associated to your default Firebase app. An alternative I can think about is to add custom key to mark which region the user belongs to for a certain crash. If you need more complicated analysis you can leverage on BigQuery for that.

@ppave
Copy link
Author

ppave commented May 6, 2024

Thanks @themiswang for details, let me check

@google-oss-bot
Copy link

Hey @ppave. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.

If you have more information that will help us get to the bottom of this, just add a comment!

@google-oss-bot
Copy link

Since there haven't been any recent updates here, I am going to close this issue.

@ppave if you're still experiencing this problem and want to continue the discussion just leave a comment here and we are happy to re-open this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants