Bugtags 在线修复功能介绍

目录
  1. 1. Web 云平台创建在线修复
    1. 1.1. 进入在线修复,点击创建补丁
    2. 1.2. 填写补丁信息
    3. 1.3. 设置下发规则
    4. 1.4. 开始测试

在线修复可以实现在不发布应用更新的情况下实时修复 iOS 应用的 Bug 或代码逻辑,如:调用接口、替换方法等。

开启 Bugtags SDK 的在线修复功能,需要在 iOS 项目中添加 JSPatch 库。JSPatch 是一个非常优秀的开源项目,现已广泛使用于 iOS 应用,
实现原理是在项目里引入极小的引擎文件,就可以实现使用 JavaScript 调用或者替换 Objective-C/Swift 的原生接口,实时修复线上 Bug ,非常高效。

举个例子:

1
2
3
4
5
6
7
8
@implementation BugtagsDemo
...
- (void)addObject:(id)object
{
[self.array addObject:object]; // object 可能为 nil,导致闪退
}
...
@end

可以通过下发这样一段 JavaScript 代码,覆盖掉原方法,修复这个 Bug:

1
2
3
4
5
6
7
8
9
10
11
//JavaScript
...
defineClass('BugtagsDemo', {
addObject: function(object) {
if (object) { // 判断 object 不为 nil

self.array().addObject(object);
}
},
});
...

使用在线修复的方法其实很简单,只需要两步:

  • Web 云平台创建在线修复
  • 开始测试

Web 云平台创建在线修复

进入在线修复,点击创建补丁

进入在线修复

填写补丁信息

创建补丁

选择需要修复的应用版本,上传补丁文件,并填写描述。

设置下发规则

在下发规则中,可以指定下发比例、范围、用户属性,请根据自己的实际情况进行设置。

下发规则

上图中,已经指定下发比例 40%,设备类型包含 iPhone 7 与 iPhone 7 Plus。

点击下一步,创建完成后,会有配置测试方法的提示,将这些代码添加到初始化 Bugtags SDK 中。

创建完成
上图为 iOS 开启测试状态的代码。

开始测试

在线修复详情页

我们看到,刚创建的补丁已经到了开发环境。一共分为三个环境:

  • 开发环境:开发人员使用,创建者与应用管理员可任意编辑该补丁。注意,开发环境中的补丁无法下发到客户端,请先同步到测试环境后进行测试。

  • 测试环境:内部测试使用,仅支持修改描述、下发比例,只有应用管理员可以发布到生产环境。

  • 生产环境:线上用户使用,仅支持修改描述、下发比例,只有应用管理员可以操作该补丁上线、下线或删除。

如果你的应用线上版本是在 Live 模式,可以点击同步到 Live,同步后默认是线下状态,请手动上线该补丁。

同步到 Live

好了,在线修复的介绍就到这里,快去试试吧!

PS:Bugtags 在线修复与企业版是单独收费的,新用户创建公司后可以免费体验 15 天,若想购买在线修复请联系公司拥有者。

如果还有疑问,欢迎加入 Bugtags QQ 群:126207501,我们尽力为你解决!

相关文章推荐