项目测试阶段了解到bug管理工具的重要性,查阅资料也不知道到底应该选择哪一种bug管理工具最佳,尝试性的认知集成了一下方便移动开发bug管理的bugtags。来做个笔记。
首先是来自百科的描述:
Bugtags采用独创的所见即所得的问题上报方式,有效提高了问题上报的效率和问题描述的准确度;同时平台提供了自动收集分析崩溃信息与问题生命周期管理功能。使用Bugtags平台,能够帮助移动开发团队快速定位和解决问题,最终有效提升产品质量。
可参考如上官网的Android Studio集成视频 https://docs.bugtags.com/zh/video/android/index.html
如果遇到问题bugtags得客服也蛮给力的。
在项目根目录的gradle下配置如下代码(一句都不要少哦)
buildscript {
...
repositories {
mavenCentral()//如果 jcenter 很慢,尝试添加 mavenCentral 并调整到首行
jcenter()
}
dependencies {
...
//**重要**
classpath 'com.bugtags.library:bugtags-gradle:latest.integration'
}
}
allprojects {
repositories {
mavenCentral()//如果 jcenter 很慢,尝试添加 mavenCentral 并调整到首行
jcenter()
}
}
在app的gradle下配置如下代码(一句不能少)
android {
useLibrary 'org.apache.http.legacy'
compileSdkVersion ...
defaultConfig {
ndk {
// 设置支持的 SO 库构架
abiFilters 'armeabi'// 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
}
}
}
//应用 Bugtags 插件
apply plugin: 'com.bugtags.library.plugin'
//Bugtags 插件配置
bugtags {
//自动上传符号表功能配置,如果需要根据 build varint 配置,请参考帮助中心->符号表->Android 符号表->配置自动上传符号表
appKey "APP_KEY" //这里是你的 appKey
appSecret "APP_SECRET" //这里是你的 appSecret,管理员在设置页可以查看
mappingUploadEnabled true
//网络跟踪功能配置(企业版)
//trackingNetworkEnabled true
}
dependencies {
...
compile 'com.bugtags.library:bugtags-lib:latest.integration'
//线上使用,如果不需要使用手动提交 issue,可以选择 metrics 包
//compile 'com.bugtags.metrics:bugtags-lib:latest.integration'
}
新建一个BaseActvity来继承Activity,而后其他的Activity来继承BaseActivity
在你的 Activity 基类
(或所有的 Activity)中添加3个回调:
如果本身项目代码里有写继承activity的类可以直接把如下代码添加在里面。我在粘贴这段代码的时候import却并没有Bugtags的类,虽然我前面依赖都sync build成功了,但是没有,可以试一下rebuil或者重启AS就好了,一般前面都build过了就没问题。
package your.package.name;
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import com.bugtags.library.Bugtags;
public class BaseActivity extends Activity{
@Override
protected void onResume() {
super.onResume();
//注:回调 1
Bugtags.onResume(this);
}
@Override
protected void onPause() {
super.onPause();
//注:回调 2
Bugtags.onPause(this);
}
@Override
public boolean dispatchTouchEvent(MotionEvent event) {
//注:回调 3
Bugtags.onDispatchTouchEvent(this, event);
return super.dispatchTouchEvent(event);
}
}
继承 Application
,在 onCreate() 方法中初始化 Bugtags
建立一个class 继承Application,如果本身就有那就在里面直接添加如下代码
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
//在这里初始化
Bugtags.start("APP_KEY", this, Bugtags.BTGInvocationEventBubble);
}
}
修改 AndroidManifest.xml
,使用 MyApplication
类,:
....
同意浮窗,然后会看到一个小球悬浮在上面,点击登录你的bugtags账号可以记录运行中遇到的bug,同步到网页管理系统,附带自动截屏。
详情参考https://docs.bugtags.com/zh/start/integrate/android/maven.html
后续使用本笔记篇还会持续更新——