Visual Studio 中如何为 Xamarin Android 应用生成调试符号
Xamarin.Android 适配App Center崩溃日志符号化操作流程
Xamarin.Android的符号化需要同时处理托管代码符号和原生运行时符号两部分,App Center可直接识别兼容这两类符号,具体操作流程如下:
1. 编译阶段开启符号生成
- 打开Xamarin.Android项目的属性页,切换到Android 选项标签
- Release编译模式下取消勾选启用开发人员检测(Debugging),Debug调试模式无需调整
- 进入高级子选项页,将调试信息格式设置为
Portable或Full - 执行Release编译,生成对应版本的apk/aab安装包
2. 提取待上传的符号文件
编译完成后,到项目输出目录收集两类符号文件,默认输出路径为[项目根目录]\[Xamarin.Android项目名]\bin\Release\[目标架构]:
- 托管代码符号:所有后缀为
.pdb的文件,对应C#/F#等托管层代码的符号映射 - 原生库符号:lib目录下各架构子文件夹中后缀为
.so.dbg的文件,对应Xamarin运行时、原生依赖库的调试符号
若编译生成的是aab格式包,也可直接从aab压缩包内提取上述两类文件,无需单独编译单架构apk。
如果项目开启了R8代码混淆,还需要额外收集混淆映射文件,默认路径为[项目根目录]\[Xamarin.Android项目名]\obj\Release\proguard\mapping.txt。
3. 上传符号到App Center
- 进入App Center对应应用的诊断板块,选择符号管理页
- 点击右上角上传符号按钮,上传刚才收集的所有符号文件即可
- 符号解析完成后,后续上报的该版本崩溃日志会自动完成符号化,直接展示对应的方法名、代码行数等定位信息
相关说明
目前相关官方说明散见于Xamarin.Android编译配置文档、App Center原生Android符号上传文档,两者搭配即可完成全流程操作,无需依赖第三方工具。
内容的提问来源于stack exchange,提问作者Tim Coulter
相关产品推荐
相关产品推荐

