腾讯buglly|Android热更新|Android异常上报|运营统计开发工作记录-玉念聿辉

目录

      • 热更新
      • 异常上报
      • 运营统计
      • 总结
      • 练手demo

热更新


官方说明文档:玉念聿辉

今天来介绍一下buglly的热更新以及普通升级的使用过程,予以后人一个错误的对比案例。热更新框架其实有很多,为什么我会更加青睐buglly呢,一是腾讯的人性化设计,二就是容易入手,适合我这样的小菜。
腾讯buglly|Android热更新|Android异常上报|运营统计开发工作记录-玉念聿辉_第1张图片
老司机应该看出来的,上面是一个eclipse的报错日志,为什么会用eclipse来开发呢?官网也只给AS的说明文档啊?经验告诉我把一个有年代感的eclipse项目导入as一定是个可怕的过程,所以有了上面的尝试。

拿普通更新来举个例子,官网给的手动集成SDK方案是一个aar包,但eclipse又不支持直接导入怎么办?

解:

1.首先将我们的.aar文件通过解压工具解压,或者把后缀名改为.zip再进行解压,解压后的文件目录如
腾讯buglly|Android热更新|Android异常上报|运营统计开发工作记录-玉念聿辉_第2张图片
2.创建一个libs文件夹,已经存在的话就不用了;

3.将classes.jar文件拖放到libs文件夹中;

4.删除aapt和jni文件夹以及R.txt和proguard.txt文件,如果有的话;

5.在解压得到的目录里创建project.properties文件,内容如下:

target=android-22  
android.library=true 

6.最终的文件夹目录下有这些内容,导入eclipse当Library使用即可,如图所示:
腾讯buglly|Android热更新|Android异常上报|运营统计开发工作记录-玉念聿辉_第3张图片
经过上面的公式一套解下来,运行却发现答案是错误的,继续逛官网文档发现如下说明:

腾讯buglly|Android热更新|Android异常上报|运营统计开发工作记录-玉念聿辉_第4张图片
到这里就差不多猜出来,解压出来的aar中没有provider,所以我只能自己手动添加了一个空的用于防止爆红。

这里是我解压出来的aar包:玉念聿辉

结果打分

可想而知解题方法虽然可以直接套用,但绝不是最简单的公式,满分100综合打分0.1幸苦分。

异常上报


经过上一个题的教训,这个题我们已更换解题方法,下面是高分优化说明希望对你有所帮助;

 		// 初始化buglly异常
        Context context = getApplicationContext();
        // 获取当前包名
        String packageName = context.getPackageName();
        // 获取当前进程名
        String processName = getProcessName(android.os.Process.myPid());
        // 设置是否为上报进程
        CrashReport.UserStrategy strategy = new CrashReport.UserStrategy(context);
        strategy.setUploadProcess(processName == null
                || processName.equals(packageName));
        // 初始化Bugly,这里我们直接去掉,使用更新初始化的统一初始化即可
        // CrashReport.initCrashReport(context, "1646637297", true, strategy);
 		/**
         * 已经接入Bugly用户改用上面的初始化方法,不影响原有的crash上报功能;
         * init方法会自动检测更新,不需要再手动调用Beta.checkUpdate
         * (),如需增加自动检查时机可以使用Beta.checkUpdate(false,false); 参数1:
         * applicationContext 参数2:appId 参数3:是否开启debug
         */
        Bugly.init(getApplicationContext(), APP_ID, true);

运营统计


运营统计就没有特别声明了,这是个送分题,如果前面三个大题只要有一个全对,这个题就是满分,如果全错那么这个题就无解,下面上一个效果图使文章看起来好看一点。

腾讯buglly|Android热更新|Android异常上报|运营统计开发工作记录-玉念聿辉_第5张图片

总结


虽然和buglly相识也有三四年了,借着这个老项目,记录一下自己这本不必要踩的坑,如果有时间深究一下其实这个思路也肯定是行的通的,不过我们习惯性的站在巨人的肩膀上解决问题罢了,等我看完源码来继续今天这个话题。

发表一下个人观点,对buglly取消内侧分发功能表示遗憾;

为什么使用Bugly的热更新?

  1. 无需关注Tinker是如何合成补丁的
  2. 无需自己搭建补丁管理后台
  3. 无需考虑后台下发补丁策略的任何事情
  4. 无需考虑补丁下载合成的时机,处理后台下发的策略
  5. 我们提供了更加方便集成Tinker的方式
  6. 我们通过HTTPS及签名校验等机制保障补丁下发的安全性
  7. 丰富的下发维度控制,有效控制补丁影响范围
  8. 我们提供了应用升级一站式解决方案

为什么使用Bugly的异常上报?

  1. 不用自己搭建管理后台
  2. 便于了解自己app的运行情况

为什么使用Bugly的运营统计?

  1. 好东西能用则用
  2. 方便自己了解app的运行情况

练手demo


buglly:https://bugly.qq.com/v2/sdkDownload?id=fba5cc37-0068-4555-a55b-e6b13f1dc2f7

你可能感兴趣的:(前端)