-
-
Notifications
You must be signed in to change notification settings - Fork 56
fix: Screenshot Capture #2240
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
base: main
Are you sure you want to change the base?
fix: Screenshot Capture #2240
Conversation
|
||
public void CaptureScreenshotForEvent(SentryUnityOptions options, SentryId eventId) | ||
{ | ||
StartCoroutine(CaptureScreenshot(options, eventId)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This method returns before the coroutine starts/ends, right? how do we know the screenshot will be taken before the event is created?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ScreenshotProcessor
forwards the call to the SentryMonoBehaviour
that starts the coroutine for the current EndOfFrame.
276efc3
to
11548fe
Compare
CI is unhappy |
Fixes #2224, #1827 🎉
Relies on the .NET SDK getsentry/sentry-dotnet#4357
Context
The SDK has to wait for
EndOfFrame
before capturing a screenshot as the behaviour is unreliable otherwise. See Unity docs.Implementation
The
ScreenshotProcessor
uses theSentryMonoBehaviour
to start a coroutine that waits forEnd of Frame
to capture the screenshot. The screenshot gets sent as an envelop with a single attachment as envelope item.