android-tombstone-symbolication

仓库创建 2026年2月4日最近提交 18 小时前SkillHot 收录 20 天前
▸ 精选理由

便于 MAUI/Xamarin 崩溃排查,自动定位源文件行号。

▸ 风险提示

需要联网从符号服务器下载符号并执行 llvm-symbolizer。

这个 Skill 做什么

将 Android tombstone 中的 .NET 本机帧符号化为函数名与文件行号。

对 Android 的 tombstone 崩溃日志进行符号化,把与 .NET 运行时有关的本机帧还原成函数名和源码行号。用于排查 MAUI/Xamarin/Mono Android 应用的原生崩溃(如 SIGABRT、SIGSEGV),会提取 BuildId、下载符号并调用 llvm-symbolizer 得到文件和行号。特别适合需要把 ELF 原生回溯映射回 .NET 源码的场景,不适合纯 Java/Kotlin 崩溃。

▸ 展开 SKILL.md 英文原文

Symbolicate the .NET runtime frames in an Android tombstone file. Extracts BuildIds and PC offsets from the native backtrace, downloads debug symbols from the Microsoft symbol server, and runs llvm-symbolizer to produce function names with source file and line numbers. USE FOR triaging a .NET MAUI or Mono Android app crash from a tombstone, resolving native backtrace frames in libmonosgen-2.0.so or libcoreclr.so to .NET runtime source code, or investigating SIGABRT, SIGSEGV, or other native signals originating from the .NET runtime on Android. DO NOT USE FOR pure Java/Kotlin crashes, managed .NET exceptions that are already captured in logcat, or iOS crash logs. INVOKES Symbolicate-Tombstone.ps1 script, llvm-symbolizer, Microsoft symbol server.

开发编程符号化Android崩溃分析通用
4.8k
Stars
351
Forks
40
仓库内 Skill
+610
7 日增星
安装 / 使用
给你的 Agent 一句话(通用)
帮我安装这个 skill:https://raw.githubusercontent.com/dotnet/skills/main/plugins/dotnet-diag/skills/android-tombstone-symbolication/SKILL.md
或 curl 直取 SKILL.md
curl -fsSL "https://raw.githubusercontent.com/dotnet/skills/main/plugins/dotnet-diag/skills/android-tombstone-symbolication/SKILL.md"
SKILL.MD 节选查看完整文件 ↗
# Android Tombstone .NET Symbolication

Resolves native backtrace frames from .NET Android app crashes (MAUI, Xamarin, Mono) to function names, source files, and line numbers using ELF BuildIds and Microsoft's symbol server.

**Inputs:** Tombstone file or logcat crash output, `llvm-symbolizer` (from Android NDK or any LLVM 14+ toolchain), internet access for symbol downloads.

**Do not use when:** The crash is a managed .NET exception (visible in logcat with a managed stack trace), the crashing library is not a .NET component (e.g., `libart.so`), or the tombstone is from iOS.

---

## Workflow

### Step 1: Parse the Tombstone Backtrace

Each backtrace frame has this format:

```
#NN pc OFFSE
via SKILL·HOT · 数据来自 GitHub 公开信息 · 原文版权归作者所有