chore(android): Add Nav2 sample app - #6037
Merged
Merged
Conversation
📲 Install BuildsAndroid
|
Adds a Nav2 sample app for validating Sentry's fragment and Compose navigation integrations under different tracing setups. Developers can configure active transactions (nav vs ui.load vs user interaction), navigation data (breadcrumbs and screen names), and work performed at each nav destination (HTTP requets, manual spans, or nothing). They can also view transaction/span generation in real time via the Transaction History Bottom Sheet. Co-Authored-By: OpenAI GPT-5.4 <noreply@openai.com>
0xadam-brown
force-pushed
the
chore/nav2-sample-app
branch
from
September 1, 2026 11:52
8f49390 to
37dac13
Compare
0xadam-brown
marked this pull request as ready for review
September 1, 2026 11:53
0xadam-brown
requested review from
adinauer,
markushi,
romtsn and
runningcode
as code owners
September 1, 2026 11:53
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 3 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want reviews to match your repository better? Bugbot Learning can learn team-specific rules from PR activity. A team admin can enable Learning in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 37dac13. Configure here.
runningcode
approved these changes
Sep 1, 2026
runningcode
left a comment
Contributor
There was a problem hiding this comment.
Sorry I misunderstood that this was a new sample app. Since it is in the existing sample app i'm approving it.
Two optional comments.
0xadam-brown
enabled auto-merge (squash)
September 1, 2026 18:38
0xadam-brown
disabled auto-merge
September 1, 2026 18:55
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This is a big PR, but it's also purely sample code. Best way to review is to check out the branch, build the sample app, and see what the new functionality can do (cf. the video below).
📜 Description
Adds a Nav2 sample app for validating Sentry's fragment and Compose existing NavigationController integrations under different tracing setups.
Developers can configure active transactions (nav vs ui.load vs user interaction), navigation data (breadcrumbs and screen names), and type of spans to be generated at each nav destination (HTTP requests, manual spans, or none). They can also view transaction/span generation in real time via the Transaction History Bottom Sheet. A performance tab lets folks stress test our nav integration in the presence of large back stacks, frequent recompositions, etc.
💡 Motivation and Context
Milestone 1 of our Nav3 support aims to match what we currently provide under Nav2. The sample app helped me figure out what precisely needs to be included and how it should show up in the Sentry backend. It also helped me uncover some existing bugs (🎉), track behavioral differences against the Nav3 sample app (forthcoming), and compare performance characteristics.
It's sure to be useful going forward too.
supports: JAVA-274
In action
nav2-pr-demo-v2.mp4
Real-time transactions and their spans + URLs to the actual Sentry UI:
Transactions (and other features) you can toggle on and off:
💚 How did you test it?
Manually and with my clanker.
📝 Checklist
sendDefaultPIIis enabled.🔮 Next steps
#skip-changelog