您的位置:首页 > 移动开发 > Android开发

Bugly Android 应用升级 SDK 使用指南

2017-06-24 00:00 405 查看

转: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 使用指南

概述

自动导入(推荐)

使用Android Studio创建project

gradle配置(重要)

手动导入jar

下载SDK库文件

构建jar编译路径

参数配置

测试验证

SDK初始化

上传升级包

配置升级策略

测试验证

概述

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

自动导入(推荐)

使用Android Studio创建project

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



gradle配置(重要)



配置示例(路径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下载



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

需要集成的jar包

接入文档

Demo示例

构建jar编译路径

Android Studio工程

将Bugly库文件复制到工程的libs目录下。

点击Sync,同步配置。

如下图所示:


Elipse工程项目

将Bugly库文件复制到工程的libs目录下。

Refresh一下工程

添加工程依赖:鼠标右键点击Bugly的JAR文件,添加到编译路径中。

如下图所示:


参数配置

在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,否则用户检测不到更新)


配置升级策略



点击新建升级策略



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


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



测试验证

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



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

设置自动初始化

设置开关自动检查

设置升级检查周期

设置初始化延迟

设置通知栏图标

设置更新弹窗bannner图

设置更新资源存储目录

设置开启显示打断策略

设置自定义UI

设置升级对话框生命周期回调
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: