腾讯Bugly应用升级使用总结

前言

        最近正在新上线项目,照以往惯例复制来了以前一直在用的一套检查更新的代码,手写的升级逻辑还是很烦的,要调接口,每次复制过来还要针对新项目修修补补,今天无意间看到腾讯的bugly也有这么一个功能而且看介绍比较方便,就尝试着用了一下,跟着文档走还是比较容易集成的,不过还是把一些注意点补充一下以便日后更加方便。

集成步骤

一、配置相关

0.官方文档链接:bugly官方文档

1.依赖

注意,如果集成更新sdk那么要注释掉原来的崩溃上报因为这个sdk已经集成了这个功能

android {

        defaultConfig {

          ndk {

            //设置支持的SO库架构            abiFilters 'armeabi' //, 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'          }

        }

      }

      dependencies {

          //注释掉原有bugly的仓库         

          //compile 'com.tencent.bugly:crashreport:latest.release'

          compile 'com.tencent.bugly:crashreport_upgrade:latest.release'

          compile 'com.tencent.bugly:nativecrashreport:latest.release'   

  }

2.权限配置

3.Activity配置

android:name="com.tencent.bugly.beta.ui.BetaActivity"

android:configChanges="keyboardHidden|orientation|screenSize|locale"

android:theme="@android:style/Theme.Translucent" />

4.配置FileProvide

这个是必须配置的 不配置安卓7.0+是用不了的

android:name="android.support.v4.content.FileProvider"

android:authorities="${applicationId}.fileProvider"

android:exported="false"

android:grantUriPermissions="true"> 

 android:resource="@xml/provider_paths"/ >

注意:如果你拥有其他也需要配置FileProvider的三方库,那么这里需要继承FileProvider来解决冲突问题

配置清单中:

android:name=".utils.BuglyFileProvider"   

android:authorities="${applicationId}.fileProvider"   

android:exported="false"   

android:grantUriPermissions="true"   

tools:replace="name,authorities,exported,grantUriPermissions">

android:name="android.support.FILE_PROVIDER_PATHS"

android:resource="@xml/provider_paths" tools:replace="name,resource"/ >

新建一个继承于V4包FileProvider的空类

packagecom.bimex.wzh.easyconsbox.base;

importandroid.support.v4.content.FileProvider;

/**使用bugly 自定义一个provider

 * Created by Google on 2018/4/25.

 */

public class BuglyFileProvider extends FileProvider {

}

在res目录新建xml文件夹,创建provider_paths.xml文件如下

         

         

5.混淆配置

-dontwarn com.tencent.bugly.**

-keep public class com.tencent.bugly.**{*;}

-keep class android.support.**{*;}

二、开始使用

1.SDK初始化

注意:如果您之前使用过Bugly SDK,请将以下这句注释掉。

CrashReport.initCrashReport(getApplicationContext(), "注册时申请的APPID", false);

统一初始化方法:

Bugly.init(getApplicationContext(), "注册时申请的APPID", false);

你可能感兴趣的:(腾讯Bugly应用升级使用总结)