【热】无数据问题排查指南⭐️
Android无数据
1、确认崩溃是否在U-APM的识别范围内
目前Android的稳定性功能可以识别Java崩溃、Native崩溃、ANR、自定义错误、卡顿(U-APM SDK1.2.0及以上)。您需要判断自己的崩溃是否属于异常,具体含义如下:
崩溃:用户在使用App过程中发生一次闪退,计为一次崩溃。
ANR:用户在使用App过程中出现弹框,提示应用无响应,计为一次ANR,ANR仅用于Android平台应用。
卡顿:主线程2秒无响应定为一次卡顿,Android 有5%抽样率.
2、是否使用其他捕获 crash SDK
我们强烈建议您仅使用一款错误及性能捕获SDK(U-APM),多款错误捕获SDK可能存在彼此拦截干扰及对您终端用户性能影响。
如果您因为特殊需要集成多个SDK
iOS:请最后初始化友盟+的 iOS U-APM SDK。
Android:请最后初始化友盟+的 Android U-APM SDK。
如果您使用我们的SDK捕获native崩溃后,其他捕获工具无法捕获到native 崩溃,可以使用如下方法在初始化SDK后进行设置,则其他SDK可以捕获到native 崩溃
final Bundle customInfo = newBundle();
customInfo.putBoolean("mCallNativeDefaultHandler",true);
CrashApi.getInstance().updateCustomInfo(customInfo);3、卡顿、启动分析、网络分析无数据
卡顿分析无数据: 需要接入U-APM SDK 版本号在1.2.0级以上 且 Android卡顿是有5%采样率的,可能您的设备没有触发被采样,所以没有上报数据,后续将上线集成测试功能,避免测试环节问题
启动分析无数据: APM 1.3.0 及以上版本号且需要按照集成文档配置
内存分析无数据:需要接入APM 1.4.0 及以上版本号 接入后需要额外集成操作
网路分析无数据:APM 1.5.0 及以上版本号且需要按照集成文档配置, 且 Android网络分析是有5%采样率的,可能您的设备没有触发被采样,所以没有上报数据,后续将上线集成测试功能,避免测试环节问题
iOS无数据
1、确认崩溃是否在U-APM的识别范围内
目前U-App iOS SDK的稳定性分析功能可以监测到的崩溃有Objective-C的崩溃、Swift层崩溃和Cpp层崩溃、卡顿(U-APM SDK1.2.0及以上)您需要判断自己的崩溃是否属于这些异常,具体含义如下:
崩溃:用户在使用App过程中发生一次闪退,计为一次崩溃
卡顿:连续3次主线程2秒无响应记为一次卡顿,无抽样率
2、稳定性测试DEMO
为了让您更好的测试这部分SDK集成是否成功,友盟为您提供了测试demo,您可以按照以下步骤进行测试。该demo如果测试成功,可以证明您的集成是没有问题的,只要是属于稳定性功能可识别的崩溃都会监测到的。
iOS集成测试方式
查看Crash Log时,需要断开Xcode调试。然后打开控制台,看iPhone日志,当App产生crash后再启动会发送。在Log中会有Crash Log Start 和Crash Log End中间就是上次产生的crash。

注意:测试时,如未断开Xcode调试模式,crash数据无法上报,请务必断开Xcode链接。
3、是否使用其他捕获 crash SDK
是否有集成其他第三方错误统计SDK,或自己获取错误信息的方法并向下传递crash信息。如没有向下传递,则无法统计到错误信息。
4、卡顿、启动分析、网络分析、内存分析无数据
卡顿分析无数据: 需要接入U-APM SDK 版本号在1.2.0级以上,接入后无需额外集成操作
启动分析无数据: 需要接入APM 1.3.0 及以上版本号且需要按照集成文档配置
内存分析无数据:需要接入APM 1.4.0 及以上版本号 接入后需要额外集成操作
网路分析无数据:需要接入APM 1.5.0 及以上版本号且需要按照集成文档配置,且 iOS网络分析是有5%采样率的,可能您的设备没有触发被采样,所以没有上报数据,后续将上线集成测试功能,避免测试环节问题。