Bugly Android 应用升级 SDK 使用指南

转:https://bugly.qq.com/docs/user-guide/instruction-manual-android-upgrade/?v=20160901120848

注意:经过实践,ecllipse的工程bugly_crash_upgrade_vXXX.jar与android-support-v4.jar必须在libs目录下,否则会app会崩溃出现NoClassDefFoundError错误;

Bugly Android 应用升级 SDK 使用指南

概述

升级功能是专为App的灰度升级而开发的组件,在bugly内测页面配置好App的更新策略,策略指定的老版本App在启动时会自动检测更新并提示升级,为团队的应用分发,灰度内测提供一站式解决方案。

自动导入(推荐)

使用Android Studio创建project

【File】-> 【New】->【New Project】

使用Android Studio创建project

gradle配置(重要)

Alt text

配置示例(路径app/build.gradle):

  android {
        defaultConfig {
          ndk {
            //设置支持的SO库架构
            abiFilters 'armeabi' //, 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
          }
        }
      }
      dependencies {
          //注释掉原有bugly的仓库
          //compile 'com.tencent.bugly:crashreport:latest.release'//其中latest.release指代最新版本号,也可以指定明确的版本号,例如1.2.9
          compile 'com.tencent.bugly:crashreport_upgrade:latest.release'//其中latest.release指代最新版本号,也可以指定明确的版本号,例如1.0.0
          compile 'com.tencent.bugly:nativecrashreport:latest.release' //其中latest.release指代最新版本号,也可以指定明确的版本号,例如2.2.0
      }

后续更新升级SDK时,只需变更配置脚本中的版本号即可。

注意: 升级SDK已经集成crash上报功能,已经集成Bugly的用户需要注释掉原来Bugly的jcenter库; 已经配置过符号表的Bugly用户保留原有符号表配置; Bugly SDK(2.1.5及以上版本)已经将Java Crash和Native Crash捕获功能分开,如果想使用NDK库,需要配置: compile 'com.tencent.bugly:nativecrashreport:latest.release'

手动导入jar

我们也支持手动集成升级SDK,毋须按照下面步骤进行接入。

下载SDK库文件

SDK下载

Alt text

点击下载即可,解压缩会发现包含以下文件:

  • 需要集成的jar包
  • 接入文档
  • Demo示例
构建jar编译路径

Android Studio工程

  • 将Bugly库文件复制到工程的libs目录下。
  • 点击Sync,同步配置。

如下图所示: Alt text

Elipse工程项目

  • 将Bugly库文件复制到工程的libs目录下。
  • Refresh一下工程
  • 添加工程依赖:鼠标右键点击Bugly的JAR文件,添加到编译路径中。

如下图所示: Alt text

参数配置

在AndroidMainfest.xml中进行以下配置:

1. 权限配置

<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_LOGS" />
<!--保存资源到SD卡-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

2. Activity配置

<activity
    android:name="com.tencent.bugly.beta.ui.BetaActivity"
    android:theme="@android:style/Theme.Translucent" />

混淆配置

为了避免混淆SDK,在Proguard混淆文件中增加以下配置:

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

注意: 已经接入Bugly SDK的用户需要先删除原Bugly SDK的jar包; android4.1以上的工程必须把jar包放在libs目录下,否则会出现NoClassDefFoundError错误;

如果您的工程有Native代码(C/C++)或者集成了其他第三方SO库,建议下载Bugly的NDK动态库

Bugly NDK包含多个架构的SO库:

  • armeabi

  • armeabi-v7a

  • arm64-v8a

  • x86

  • x86_64

在集成Bugly SO库时,请注意只保留支持的架构SO库。

测试验证

SDK初始化

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

提示:已经接入Bugly用户改用上面的初始化方法,不影响原有的crash上报功能; init方法会自动检测更新,不需要再手动调用Beta.checkUpdate(),如需增加自动检查时机可以使用Beta.checkUpdate(false,false);

上传升级包

进入内测页面选择注册的APP,点击发布新版本,上传要升级的APP的版本(上传APP的versioncode必须不低于外发版本的versiocode,否则用户检测不到更新) Alt text

配置升级策略

Alt text

点击新建升级策略

Alt text

使用默认策略配置,点击创建策略 Alt text

策略创建完成后会回到版本编辑页面,点击立即启动,使策略生效;

Alt text

测试验证

完成步骤4.4中的策略配置,在本地安装配置过升级SDK的低版本APP,启动后(请先杀掉进程)等待一段时间(默认是3s)会弹出如下升级弹窗,表示SDK配置成功。

Alt text

注: 如果你有以下需求,可以参考升级SDK高级配置

  1. 设置自动初始化

  2. 设置开关自动检查

  3. 设置升级检查周期

  4. 设置初始化延迟

  5. 设置通知栏图标

  6. 设置更新弹窗bannner图

  7. 设置更新资源存储目录

  8. 设置开启显示打断策略

  9. 设置自定义UI

  10. 设置升级对话框生命周期回调

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值