[关闭]
@Tesly 2016-04-12T07:04:54.000000Z 字数 3660 阅读 1480

Tesly SDK接入指南(Android)

Tesly


0. 使用说明

    本文档主要介绍Tesly SDK(Android)使用方法, 利用SDK可以直接完成从填写反馈、收集机型信息、抓取日志和屏幕截图等一系列动作。 
    本文属于入门级文档,旨在帮助开发者快速学习Tesly SDK的使用并应用到产品当中。
    接口人:kaipi(皮凯)/vincentshen(沈东雄)

1. 获取应用授权码

所有使用Tesly SDK服务的应用都需要有一个应用授权码(appid)。使用该appid可以帮你统计和分析相关应用的用户反馈情况。

要获取appid,请联系上述接口人。

2. 嵌入Tesly SDK到你的应用

2.1 联系接口人获取Tesly sdk。

2.2 将BuglySDK.jar包引入到你的Android工程;

2.3 添加appid配置信息,在 AndroidManifest.xml 文件的 application 中加入 BUGLY_APPID 配置信息,如下:
  1. <application>
  2. <meta-data
  3. android:name="BUGLY_APPID"
  4. android:value="你的appid" />
  5. </application>
2.4 添加权限。
  1. <application>
  2. <uses-permission android:name="android.permission.INTERNET"/>
  3. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  4. <!--下面为可选,为了获取更多的设备信息,建议加上-->
  5. <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
  6. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  7. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
  8. </application>

3. Tesly Sdk API使用说明

整个接入过程,只需要了解下面三个api。

3.1 BuglyFeedbackApi.getInstance().submitDataAsync

API作用:异步提bug到后台

参数说明:
1)Context context: 传入当前的上下文。(必选)
2)String desc:bug标题/描述/TAG。(必选)
3)String username:出现bug的用户名字,可以重复。(必选)
4)boolean isCaptureLog:是否抓取log。当bug发生和bug提交不在同一个时间点的时候,建议使用captureLog(Context context) API(详见下文),先将log保存在本地,然后提bug时将isCaptureLog设置为false。(可选,默认为抓取)
5)Map<String, String> map:用户自定义字段,为key-value对。(可选)
6)List<String> extraFileList:自定义文件绝对路径的list,如果传入该参数,则会把列表中存在的文件上传,上传成功便会删除。(可选)
7)SubmitCallback listener:回调,(必选)
注:音频文件现支持AMR(不区分大小写)、mp3格式,图片支持jpg、png格式,如有其他需要,请联系上述接口人

返回参数:void

用法简介    
  1. import com.tencent.bugly.sdk.BuglyFeedbackApi;
  2. //反馈提交按钮事件
  3. private void onClick {
  4. //用户自定义字段
  5. Map<String, String> map = new HashMap<String, String>();
  6. map.put("name1", "value1");
  7. map.put("name2", "value2");
  8. //自定义文件列表
  9. ArrayList<String> customFileList = new ArrayList<String>();
  10. customFileList.add("/sdcard/hello.txt");
  11. customFileList.add("/sdcard/hello.mp3");
  12. customFileList.add("/sdcard/customLog.log");
  13. BuglyFeedbackApi.SubmitCallback listener = new BuglyFeedbackApi.SubmitCallback() {
  14. @Override
  15. public void onSuccess(String s) {
  16. Log.d("bugly sdk", "onSuccess:" + s);
  17. }
  18. @Override
  19. public void onFail(String s) {
  20. Log.e("bugly sdk", "onFail:" + s);
  21. }
  22. };
  23. /**
  24. * 开始进入提交流程、抓日志、获取机型信息、压缩、上传
  25. * 第一个参数:context
  26. * 第二个参数:反馈描述
  27. * 第三个参数:用户名
  28. * 第四个参数:是否抓取log
  29. * 第五个参数:自定义字段
  30. * 第六个参数:自定义文件列表
  31. * 第七个参数:上传结果回调
  32. **/
  33. BuglyFeedbackApi.getInstance().submitDataAsync(this, content, "Wecar", false, map, customFileList, listener);
  34. }
3.2 public String captureLog(Context context, String logcatCmd)

API作用:抓取本地log,该api一般用于bug出现和提交不在同个时间点,先保存本地log,然后将log文件路径在调用submitDataAsync的时候传入。

参数说明:
Context context: 传入当前的上下文。(必选)
String logcatCmd:抓取logcat的命令,默认为:"logcat -v time -d"(可选)
PS:切记自定义的logcat路径,要加入-d参数,不然logcat会阻塞。

返回参数:
String : logcat文件保持的绝对路径

用法简介
  1. import com.tencent.bugly.sdk.BuglyFeedbackApi;
  2. //抓取logcat,并保存在logFilePath绝对路径下。
  3. String logFilePath = BuglyFeedbackApi.getInstance().captureLog(this);
  4. //联网的时候,如果要提bug,则将logcat文件加入customFileList并作为提bug的输入参数,即可以上传。
  5. BuglyFeedbackApi.getInstance().submitDataAsync(this, content, "Wecar", false, map, customFileList);

3.3 public static void setIsDebugEnv(Context context, boolean isDebug)

API作用:设置测试服务器or正式服务器。(不调用此api,默认是正式服务器)

参数说明:
Context context: 传入当前的上下文。(必选)
boolean isDebug: true:测试服务器 false:正式服务器

返回参数:
void

用法简介
  1. //此api需要在调用submitDataAsync前调用
  2. //设置为测试服务器
  3. BuglyFeedbackConfig.setIsDebugEnv(this, true);
  4. //测试为正式服务器(默认是正式服务器,所以也可以不进行设置)
  5. BuglyFeedbackConfig.setIsDebugEnv(this, false);
  6. //正式服务器地址:
  7. http://tesly.qq.com
  8. //测试服务器地址
  9. http://teslypi.cs0309.3g.qq.com

3.4 BuglyFeedbackConfig.setIsDeleteExtraFile(Context context, boolean isDelete);

  1. false的话,表示sdk不帮忙做删除操作
  2. true,表示sdk上传bug成功后会帮忙删除

4. Tesly Sdk后台管理页面权限申请说明

只有申请为接入项目组成员,才能看到项目的相关反馈。
具体申请流程如下:
1)打开http://tesly.qq.com,点击右上角进入“我的众测”
2)点击左侧导航栏->项目管理->所有项目
3)找到想要加入的项目->点击申请加入按钮即可

项目管理员审核流程如下:
1)新项目管理,管理员会收到审核邮件提醒,点击邮件的跳转链接。
2)导航栏->项目管理->我的项目->点击申请处理按钮即可。

更多内容请联系:cyruschen(陈勇)/vincentshen(沈东雄)


添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注