getsentry / getsentry/sentry-java
NoSuchMethodError in SentryTraced during Compose composition
- 主要語言
- Kotlin
- 星號
- 1.4k
- 分支
- 478
- 平均合併
- 3 天 4 小時
- 30 天內合併 PR
- 72
描述
## Symptoms
`NoSuchMethodError` is thrown at the entry of the public `SentryTraced` composable during Jetpack Compose composition.
* **Crash location:** `io.sentry.compose.SentryComposeTracingKt.SentryTraced(SentryComposeTracing.kt:72)` — the function header, before any body statement executes.
* **Trigger path:** normal composition (`setContent` → `Recomposer.composeInitial` → `doCompose` → `ComposableLambdaImpl.invoke` → `SentryTraced`).
* **Handling:** unhandled, crashes the app via `UncaughtExceptionHandler`.
* **Exception detail message:** not available — stripped by SDK crash detection (`error.value` is `null` on all events), so the exact missing method name is unknown.
## Scope / frequency
* 151 occurrences, 2 users impacted.
* First seen 2026-03-19, still ongoing (last seen 2026-07-07).
* Spans multiple SDK versions: 8.33.0, 8.40.0, 8.43.1, 8.47.0 (not a regression tied to one release).
* Android only. Every event is on an Android emulator (`sdk_gphone64_arm64`, `simulator: true`, `userdebug` build, Android 14).
## Reference
* Sentry issue: SDK-CRASHES-JAVA-48AR — [https://sentry.sentry.io/issues/SDK-CRASHES-JAVA-48AR]()
貢獻指南
研究方向
從 SentryComposeTracing.kt:72 開始,追蹤正常的 setContent → Recomposer.composeInitial → doCompose → ComposableLambdaImpl.invoke → SentryTraced 路徑。在報告的 Android 模擬器設定上重現崩潰,並比較列出的 SDK 版本,以識別缺少的方法,並確立一個能防止公開 composable 拋出 NoSuchMethodError 的修正方案。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- android, kotlin
- 領域
- mobile
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 冷清
- 描述清晰度
- 需要釐清
- 新手友好度
- 35/100