文章目录

• 一、前言
• 二、疾速集成
o 2.1 账号注册
o 2.2 创立利用
o 2.3 Demo下载
o 2.4 Demo导入
o 2.5 Demo试跑
• 三、极致体验
o 3.1 第一个App解体
o 3.2 查看后盾解体信息(延时1分钟+)
o 3.3 错误处理
o 3.4 告警设置
o 3.5 企业微信机器人
o 3.6 告警触发
• 四、一点小倡议
o 4.1 谬误明细中不足App版本
o 4.2 错误处理的逻辑流程

一、前言

之前始终是用腾讯的bugly
目前受邀举荐应用友盟+U-APM,那就让咱们来尝试体验一下

二、疾速集成

2.1 账号注册
友盟+注册
注册很快,没有繁琐的步骤和多余的信息填写,点赞

2.2 创立利用
利用性能监控平台U-APM


2.3 Demo下载
为了疾速体验,咱们跳过SDK集成这一步,间接用官网提供的Demo。
SDK集成也很不便,间接看官网文档即可:Android SDK集成流程

Demo下载:MultiFunctionAndroidDemo:友盟多功能Android Demo

2.4 Demo导入
导入工程File->New->Import Porject
期间有遇到一个问题,如果大家也同样遇到这个问题能够参考博文:Android Studio Failed to open zip file的解决办法

2.5 Demo试跑
批改preInit(Context context,String appkey,String channel)后,即可运行Demo
// SDK预初始化函数
// preInit预初始化函数耗时极少,不会影响App首次冷启动用户体验
public static void preInit(Context context,String appkey,String channel)
preInit()在App.java外面调用,传入本人的appkey即可。
appkey在如下图中复制。



Demo跑起来后,再去后盾看看,就会发现利用的状态变成:已集成

三、极致体验

3.1 第一个App解体

• 有点意外, 第一个解体信息进去的有点快。
• 首页->点击统计UApp->点击程序解体

3.2 查看后盾解体信息(延时1分钟+)

• 这时候就要连忙看下后盾,有没有错误信息上报
• 始终刷新后盾,同时对比实时工夫,大略延时1分10秒左右,后盾才显示出错误信息。与腾讯bugly比照稍微好点,一丘之貉吧
• 不过,错误信息倒是给的具体,间接找到com.umeng.soexample.analytics.UappActivity的第94行
• 认真一看,很显著的谬误,"123"的字符串长度只有3,无奈索引到10


3.3 错误处理

• 把未修复改成已修复
• 首先,成心不修复代码,再制作一次程序解体
o 解决状态不变,还是已修复
• 其次,批改App版本versionCode改成2,versionName改成1.0.1,其余不变,再制作一次程序解体
o 解决状态仍旧不变,还是已修复。
o 不过版本范畴变了1.0 ~ 1.0.1。这就有点错落了,对此我就有点意见了,详情见后文第四章节。


3.4 告警设置

• 通过谬误列表的告警入口进来
• 新建告警打算
o 告警名称
o 触发条件:>3次
o 失效利用版本:全副
o 触达形式:邮箱、企业微信


3.5 企业微信机器人

• 增加一个群聊
• 增加群机器人
• 失去该机器人的Webhook

3.6 告警触发

• 告警设置胜利后,就开始触发告警
• 点了好几次都没反馈,奇奇怪怪
• 没关系,有点急躁,等~
• 终于被我等到了~


• 很显著看进去,告警触发是每小时一次的
• 根本都在每小时的07分左右推送

四、一点小倡议

4.1 谬误明细中不足App版本

• App版本号在谬误列表中有体现,挺好的
• 然而在谬误明细中没有体现,相同还多出一个SDK版本号,容易混同

4.2 错误处理的逻辑流程

错误处理的逻辑流程能够优化成如下:
• 在解体剖析->谬误列表->解决状态在勾选已修复的时候,抉择在XX.XX.XX版本修复
• 后续如果版本大于 XX.XX.XX版本时,还有同样的谬误上报,则把解决状态主动批改成修复失败
• 减少一个解决流程记录,具体记录这个bug在XX工夫被XX人在XX版本修复,而后在XX版本又复发……
依照这个逻辑批改后,解决状态是动静的,减少了更多的信息。
比起目前,一旦手动批改了解决状态后,其状态始终不变,是不是强多了~

作者:康玮剑
1、多年嵌入式软件开发教训;
2、同样善于Android开发和微信小程序开发;
3、做过大厂的零碎工程师,当过小厂的嵌入式主管,当初是个守业公司的软件经理;
4、对IoT物联网开发有本人的见解,业余时间喜爱积淀、整顿与分享输入本身的技术常识。