bugTags

来自于:开发者立即使用

概述

bugTags 是一个基础BugTags测试平台开发的模块,暂仅支持Android,iOS开发中。Bugtags是国内首款为改善移动产品质量而专门打造的测试平台产品。使用Bugtags平台可以随时随地对移动产品提出准确的改善意见,使得测试更简单,修复问题更轻松,产品用户满意度更高。

BugTags官方网站, 登录该网站之后,创建对应的Android 和 iOS应用,获取对应的appKey即可使用。

注1:在调用doSDKInit初始化之后,需要先将App返回到后台,然后再次点击App完成SDK的整个初始化工作。否则部分功能将无法使用

注2: 与其它崩溃收集工具同时使用,会影响 Bugtags 的崩溃收集功能。已知的可能会产生影响的 sdk 有umeng sharesdk testin bugly

注3:

Android 看不到悬浮球?

MIUI

MIUI 默认关闭了应用悬浮窗,需要在设置中打开,打开方式:

MIUI 4.8下:设置 -> 应用 -> 找到应用 -> 显示悬浮窗 -> 开启

MIUI 6下:安全中心 -> 授权管理 -> 应用权限管理 -> 权限管理-> 显示悬浮窗 -> 勾选

锤子 Smartisan OS

在锤子手机上,会提示是否允许 xxx 显示悬浮窗,请选择允许。 如果需要手动设置,可以到“设置-锁屏和安全-应用程序权限管理-首页悬浮窗”,找到应用,打开。

魅族 flyme4 OS

具体设置方法如下:

打开【安全中心】 点击【权限管理】 点击上方菜单的【通知】,就可以设置其他应用的悬浮窗了 华为 EMU

手机管家 -> 通知管理 -> 悬浮窗管理 -> 勾选集成 Bugtags 的 App

注4: 本模块和其他模块一起使用,易发生崩溃现象。 如果您测试时发生崩溃现象,可尝试减去一些模块,重新编译。

模块接口

doSDKInit

bugTags初始化,默认初始化之后,是不会显示悬浮窗的。需要手动设置呼出模式。

doSDKInit({params}, callback(ret, err))

params

appKey:

  • 类型:字符串
  • 描述:在bugTags官网申请的AppKey(分android 和 iOS)
  • 默认值:无

showMsg:

  • 类型:布尔值
  • 描述:是否显示提示窗口
  • 默认值:true

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    msg: 'success',          //初始化成功                               
}

示例代码

var bugTags = api.require('bugTags');
var param = {appKey:"yourIOSAppKey",showMsg:true};
bugTags.doSDKInit(param,function(ret,err){
    api.toast({msg: ret.msg,duration: 2000, location: 'bottom' });
                });

可用性

Android系统

可提供的1.0.0及更高版本

doSDKCapture

截图提交信息,(bug 改进等等),编辑完之后,点击悬浮图标,点击打钩按钮进行提交

doSDKCapture({params},callback(ret, err))

params

UserData:

  • 类型:JSON对象
  • 描述:(可选项)自定义用户数据 (默认自定用户数据为空,以key-value的形式存储)
  • 默认值:无
  • 内部字段:
{
    yourKey1:youValue1,
    yourKey2:youValue2
}

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    msg: '发送成功',          //数据发送成功                               
}

示例代码

{
   var bugTags = api.require('bugTags');
   bugTags.doSDKCapture(function(ret,err){
   api.toast({msg: ret.msg,duration: 2000,location: 'bottom'});
           });
}

可用性

Android系统

可提供的1.0.0及更高版本

doSDKSendException

手动发送 崩溃Exception

doSDKSendException({params})

params

exName:

  • 类型:字符串
  • 描述:异常名
  • 默认值:无

exReason:

  • 类型:字符串
  • 描述:异常发生的原因
  • 默认值:无

UserData:

  • 类型:JSON对象
  • 描述:(可选项)自定义用户数据 (默认自定用户数据为空,以key-value的形式存储)
  • 默认值:无
  • 内部字段:
{
    yourKey1:youValue1,
    yourKey2:youValue2
}

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    msg: '发送成功',          //数据发送成功                               
}

示例代码

{
   var bugTags = api.require('bugTags');
   try {
        throw new Error("JsonException:something is error!");
        } catch (e) {
        var param = {exName:"JsonException",exReason:e.message,UserData:{userName:"zhangjie",userVip:"v9"}};
                        bugTags.doSDKSendException(param,function(ret,err){
                            api.toast({
                                msg: ret.msg,
                                duration: 2000,
                                location: 'bottom'
                            });
                        });
}

可用性

Android系统

可提供的1.0.0及更高版本

doSDKSendFeedback

发送文字 反馈信息

doSDKSendFeedback({params},callback(ret, err))

params

msg:

  • 类型:字符串
  • 描述:反馈信息
  • 默认值:无

UserData:

  • 类型:JSON对象
  • 描述:(可选项)自定义用户数据 (默认自定用户数据为空,以key-value的形式存储)
  • 默认值:无
  • 内部字段:
{
    yourKey1:youValue1,
    yourKey2:youValue2
}

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    msg: '发送成功',          //数据发送成功                               
}

示例代码

var bugTags = api.require('bugTags');
var param = {msg:"this is a msg from ac app",UserData:{userName:"yangjie",userVip:"v4"}};
bugTags.doSDKSendFeedback(param,function(ret,err){
           bugtags.doSDKLog({msg:"SendFeedback status : "+ret.msg});
                    api.toast({
                        msg: ret.msg,
                        duration: 2000,
                        location: 'bottom'
                    });
                });

可用性

Android系统

可提供的1.0.0及更高版本

doSDKLog

Bugtags 日志,调用该方法之后,bugTags后台会看Log消息。

doSDKLog({params})

params

msg:

  • 类型:字符串
  • 描述:反馈信息
  • 默认值:无

UserData:

  • 类型:JSON对象
  • 描述:(可选项)自定义用户数据 (默认自定用户数据为空,以key-value的形式存储)
  • 默认值:无
  • 内部字段:
{
    yourKey1:youValue1,
    yourKey2:youValue2
}

示例代码

var bugTags = api.require('bugTags');
bugTags.doSDKLog({msg:"this is a bugTags log",UserData:{userName:"yangjie2",userVip:"v100"}});

可用性

Android系统

可提供的1.0.0及更高版本

doSDKSetUploadDataOnlyViaWiFi

是否只允许在 Wifi 下上传数据

doSDKSendFeedback({params},callback(ret, err))

params

status:

  • 类型:布尔值
  • 描述:是否只允许在 Wifi 下上传数据?
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    msg: 'success',          //设置成功                               
}

示例代码

var bugTags = api.require('bugTags');
var param = {status:true};//false
bugTags.doSDKSetUploadDataOnlyViaWiFi(param,function(ret,err){
    alert(ret.msg);
});

可用性

Android系统

可提供的1.0.0及更高版本

doSDKsetInvocationEvent

设置 Bugtags 所处的呼出模式

doSDKsetInvocationEvent({params},callback(ret, err))

params

invocationEvent:

  • 类型:int
  • 描述:设置 Bugtags 所处的呼出模式 (0:静默模式,只收集 Crash 信息(如果允许,默认为允许; 1:通过摇一摇呼出 Bugtags;2:通过悬浮小球呼出 Bugtags)
  • 默认值:无

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    msg: 'success',          //设置成功                               
}

示例代码

var bugTags = api.require('bugTags');
var param = {invocationEvent:};
bugTags.doSDKsetInvocationEvent(param,function(ret,err){
    alert(ret.msg);
     });

可用性

Android系统

可提供的1.0.0及更高版本

doSDKGetCurrentInvocationEvent

获取 Bugtags 当前的呼出模式

doSDKGetCurrentInvocationEvent(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    type: '1',          //数字类型;当前bugTags的呼出模式
}

示例代码

var bugTags = api.require('bugTags');
bugTags.doSDKGetCurrentInvocationEvent(function(ret,err){
           alert(ret.type);
        });

可用性

Android系统

可提供的1.0.0及更高版本