Skip to content

New User Feedback form #4384

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

Open
wants to merge 22 commits into
base: main
Choose a base branch
from
Open

New User Feedback form #4384

wants to merge 22 commits into from

Conversation

stefanosiano
Copy link
Member

@stefanosiano stefanosiano commented May 9, 2025

📜 Description

Continuation of #4286
Add the new User Feedback form (an AlertDialog)
Add all relevant options for customizations and callbacks

How the form is shown in the example app with light theme and no customization
Screenshot 2025-05-14 at 18 00 02

How the form is shown in the example app with dark theme and no customization
Screenshot 2025-05-14 at 17 59 44

How the form is shown in the example app with (pretty bad) customization
Screenshot 2025-05-14 at 18 02 16

💡 Motivation and Context

Implements first part of #3613

💚 How did you test it?

to do

📝 Checklist

  • I added tests to verify the changes.
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled.
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • Review from the native team if needed.
  • No breaking change or entry added to the changelog.
  • No breaking change for hybrid SDKs or communicated to hybrid SDKs.

🔮 Next steps

Next PR will have the widget (the button that actually show the form)
After that, we'll have screenshots and whatever

Added Scopes.captureFeedback API

Changed the MainActivity sample app to use the new API
captureFeedback does not update scope lastEventId anymore
added SentryOptions.beforeSendFeedback
implemented SentryClient.captureFeedback
# Conflicts:
#	CHANGELOG.md
#	sentry/api/sentry.api
#	sentry/src/main/java/io/sentry/SentryClient.java
added first draft of SentryUserFeedbackDialog
added feedbackOptions to SentryOptions
added callbacks to SentryUserFeedbackDialog
Copy link
Contributor

github-actions bot commented May 9, 2025

🚨 Detected changes in high risk code 🚨

High-risk code has higher potential to break the SDK and may be hard to test. To prevent severe bugs, apply the rollout process for releasing such changes and be extra careful when changing and reviewing these files:

  • sentry/src/main/java/io/sentry/transport/HttpConnection.java
  • sentry/src/main/java/io/sentry/transport/RateLimiter.java

Copy link
Contributor

github-actions bot commented May 9, 2025

Messages
📖 Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 1a758a2

Copy link
Contributor

github-actions bot commented May 9, 2025

Performance metrics 🚀

  Plain With Sentry Diff
Startup time 431.40 ms 488.06 ms 56.66 ms
Size 1.58 MiB 2.09 MiB 517.60 KiB

Previous results on branch: feat/user-feedback-widget

Startup times

Revision Plain With Sentry Diff
a83c559 459.20 ms 529.53 ms 70.34 ms
9f19891 402.73 ms 525.00 ms 122.27 ms
ded4b06 409.00 ms 469.23 ms 60.23 ms

App size

Revision Plain With Sentry Diff
a83c559 1.58 MiB 2.09 MiB 515.74 KiB
9f19891 1.58 MiB 2.09 MiB 515.84 KiB
ded4b06 1.58 MiB 2.09 MiB 517.61 KiB

added feedback message truncation
SentryClient doesn't check for backfillable feedbacks anymore
Base automatically changed from feat/new-user-feedback-logic to main May 12, 2025 11:58
added dialog theme to sample app
MainActivity "send user feedback" button now opens feedback dialog instead of sending feedback
# Conflicts:
#	sentry-samples/sentry-samples-android/src/main/java/io/sentry/samples/android/MainActivity.java
#	sentry/api/sentry.api
#	sentry/src/main/java/io/sentry/HubAdapter.java
#	sentry/src/main/java/io/sentry/HubScopesWrapper.java
#	sentry/src/main/java/io/sentry/IScopes.java
#	sentry/src/main/java/io/sentry/NoOpHub.java
#	sentry/src/main/java/io/sentry/NoOpScopes.java
#	sentry/src/main/java/io/sentry/Scopes.java
#	sentry/src/main/java/io/sentry/ScopesAdapter.java
#	sentry/src/main/java/io/sentry/SentryClient.java
#	sentry/src/main/java/io/sentry/transport/RateLimiter.java
@stefanosiano stefanosiano marked this pull request as ready for review May 14, 2025 16:32
@stefanosiano stefanosiano requested a review from lcian as a code owner May 14, 2025 16:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant