目录

听云App接入总结

听云App接入总结

听云App接入总结

在app中接入听云,可以高效率的捕获异常信息,是一款比较好用的统计分析工具,核心功能有:崩溃分析,交互分析,网络请求分析,错误分析,ANR分析等。

在接入听云App的过程中,遇到了一些坑,在这里做个总结。

###注意事项

本文只针对Andorid Studio开发工具。

####1、添加听云符号表插件

apply plugin: ‘newlens’

添加这个插件的时候,不能将其放在library的build中,只能放在主module的build中

同时,在添加的时候,应该写在 apply plugin:‘maa’、apply plugin:‘oneapm’、growingI() 后面,避免冲突。

其它的配置,既可写在library的build中,也可写在module的build中,如 引入mavencentral()或compile “com.networkbench.newlens.agent.android:nbs.newlens.agent:2.8.1”

错误形式:

https://img-blog.csdn.net/2018030110471618?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQzODIzNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

正确形式:

https://img-blog.csdn.net/20180301104818171?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQzODIzNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

####2、Android Studio使用gralde版本要和听云sdk的版本适配

Android Studio使用的gradle插件是3.0.0以上版本,需要升级听云sdk至2.7.1(含)及以上版本。

gradle版本可在项目(Project)的build.gradle文件中查看:

https://img-blog.csdn.net/20180301115858714?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQzODIzNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

https://img-blog.csdn.net/20180301120058920?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQzODIzNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

####3、打印听云日志,查找错误。

如听云接入没有问题,并且以上1和2也是正确的,项目运行后,听云仍启动失败:

https://img-blog.csdn.net/20180301135511639?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQzODIzNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

可打印听云运行时的日志,查找错误。

在Terminal面板中输入:

gradlew clean assembleDebug –info –stacktrace 1>log.txt 2>&1

等待打印,项目越大,打印的时间越长。

打印完成后,会在项目中产生log.txt文件:

https://img-blog.csdn.net/20180301140230537?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQzODIzNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

项目的整个启动过程,都在这个文件里,可在里面查找是否是其它因素影响了听云的启动。

####4、多次修改后,听云会存在缓存,致使一直运行不成功,可以对项目进行clean或重启Android Studio。

####5、听云运行成功:

https://img-blog.csdn.net/20180301164206185?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjQzODIzNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

###扩展

免费版的听云App里,只能建两个项目,当然,一个key可被多个项目使用,但是,这样会显得控制台收到的信息非常杂乱,很难辨别出这是来自哪个项目的bug信息。

当然,你也可以去买收费版的听云App,收费版的可多建很多项目,价格小贵。

有一种方法,使用免费版的听云,在控制台里可标志出这是来自哪个项目的bug信息,即在初始化后,设置个ID。

自定义用户ID

NBSAppAgent.setLicenseKey("bd2e0a7cc4bd40a6877d9579c947c221")
                .withLocationServiceEnabled(true)
                .start(this.getApplicationContext());
        NBSAppAgent.setUserIdentifier("com.example.risencn_mobile_yh");

setUserIdentifier方法里可放入项目的包名。

设置好后,在听云控制台崩溃的详细信息里,会标志出这是哪个项目抛出的异常信息。

总结:这里只是本人在接入时遇到的坑,具体的操作文档,请参考听云官方文档。