Mi使用须知二三事(持续更新中)


#1

>不少同学在使用Mobile Insight 之前都会有这样或者那样的问题,小编这里就专门开张帖子把所有的前情提要都说一下,如果有暂时未粘出的问题,不要急,可能是小编正在酝酿语言哈:joy:当然也可能是因为您的问题有些独特可以联系我们的相关技术人员哦。:pray:

此贴持续更新中…


1.Mobile Insight SDK简介。

简单的一句话:这是一款移动应用性能监控工具。

Mobile Insight SDK主要通过数据和图表的形式,帮助移动应用开发者量化应用性能。通过在项目工程中集成sdk,进行 Crash深度搜集分析,监控网络使用状态,实时查看WebView动态,慢交互追踪,全方位组合分析… Mobile Insight SDK 既可在开发测试环节使用,帮助开发人员发现潜在bug,优化代码,也能同应用一起发布上线,在真实的用户场景中监测应用性能指标,为提升用户体验助力。

2.当前Mobile Insight SDK有哪些功能呢?

当前的Mobile Insight SDK有iOS和Android两种,当前支持的功能有:

  • 交互、慢交互
  • 应用崩溃定位分析
  • ANR (仅安卓)
  • 网络请求监控
  • WebVIew响应时间分析
  • 地域、运营商、日活等运营数据的统计
    相关功能介绍详见:功能介绍文档

3.iOS sdk 可以统计崩溃、分析崩溃原因吗?

可以,包括崩溃的发生时间、堆栈信息、崩溃轨迹、影响设备、操作系统、应用版本等。如果同时使用了其他的崩溃搜集工具,崩溃的搜集可能会受到影响。

4.为什么集成iOS SDK 还要上传dsym文件?

Xcode编译项目后,我们会看到一个同名的 dSYM 文件,dSYM 文件是保存 16 进制函数地址映射信息的中转文件。如果Debug调试模式的话,我们可以根据log的输出轻松定位到导致crash的原因,但当应用 release 模式打包或上线后出现Crash,这个时候就需要通过出错的函数地址去查询 dSYM 文件中程序对应的函数名和文件名。

为了帮助用户快速准确地定位App发生Crash的详细位置,OneAPM使用dSYM文件将crash文件中的16进制地址转换成可读信息(内存地址、函数名、文件名、行号信息)。所以上传对应的dSYM文件是很有必要的。

5.项目工程上传dsym有什么需要注意的吗?

首先,符号表与应用的版本并没有直接关系,并不是同一个版本所对应的符号表就是一样的。
实际上,只要我们修改了应用的代码,符号表文件就会发生变化。 在利用dsym文件解析崩溃的时候,一个字节的差异都会导致后续数据失之毫厘,差之千里,如果因此在平时的测试过程中,为了保证崩溃信息的正确解析,一定要及时上传新的dsym文件,在上线项目之前,也要保证上传的dsym文件和即将上传的ipa包中的dsym相同。