华为AGC推出的解体服务,零代码集成,只须要增加SDK即可。有时可能集成了SDK,在AGC页面获取不到解体报告,总结了一下能够排查以下几点:
1、首先确认下端侧有没有上报
执行“adb shell setprop log.tag.AGC_LOG VERBOSE” 开启Crash SDK的调试模式,在利用解体时看是否有打印“upload success”,有打印阐明端侧曾经上报,否则须要查看集成状况。
如果端侧没有上报的话能够间接调用testit接口制作一个解体,同时增加如下代码打印crashhandler:
Button btn_crash = findViewById(R.id.btn_crash);
btn_crash.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
final String clzName = getTheDefaultCrashHandler();
if(isAGCCrashHandler(clzName)){
AGConnectCrash.getInstance().testIt();
} else{
Toast.makeText(MainActivity.this,
"the default crash handler is " + clzName,
Toast.LENGTH_SHORT).show();
}
}
});
private boolean isAGCCrashHandler(String clz){
if(clz.startsWith("com.huawei.agconnect.crash")) {
return true;
}
return false;
}
private String getTheDefaultCrashHandler(){
Thread.UncaughtExceptionHandler defCrashHandler = Thread.getDefaultUncaughtExceptionHandler();
return defCrashHandler.getClass().getName();
}
确保default crash handler 是AGC, 有可能有开发者集成了其余第三方的crash服务,导致AGC的crash 还没有初始化胜利,利用就解体了。此时能够尝试勾销其余第三方的解体服务,只集成AGC 的解体服务。如果能够那就须要查看下各个解体服务的集成是否有抵触。
2、端侧有上报,AGC页面仍旧没有展现
2.1 确保手机的网络是好的
2.2 我的项目增加的json是在开明华为剖析后的。Json外面蕴含这些信息:
2.3 利用解体后再次关上不产生解体,Java的crash在解体时就会上报解体信息,NDK的解体以后还是须要再次关上利用才上报。
2.3 查看华为剖析“实时概览”,是否有数据上报
2.4 AGC页面别离点击“按用户搜寻”和“统计”页签,看是否均没有报告,有时HA会在“按用户搜寻”展现解体信息,然而“统计”页签没有。这种状况可能是实时数据采集有积压导致,须要分割华为工程师解决。
想要理解更多解体服务的开发指南,请参考:
https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-crash-test-0000001055420516
原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0201460194044770899?fid=0101271690375130218
原作者:Mayism
发表回复