###中文文档请移步 README_CN ###QQ tribe for help: 210286347
Bugtags for Android, reports bugs and their diagnosis information in one step, captures crashes automatically. Improve your apps anywhere, anytime.
Create a free account and invite your team to improve your apps.
Download demo app here: DEMO.apk
If you are using Eclipse for Android development, visit SDK for Eclipse to download SDK.
Bugtags also support iOS !
We are going to support English language in September.
- Take snapshot of bug, add tags to describe the bug.
- Automatically collect device and app context data following reporting bugs.
- Automatically capture crashes.
- Bug lifecycle management.
- Setup
buildscript dependencies
in Top-level build.gradle file:
buildscript {
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
classpath 'com.bugtags.library:bugtags-gradle:latest.integration'
}
}
allprojects {
repositories {
jcenter()
mavenCentral()
}
}
- Add
plugin and dependency
in your module's build.gradle file:
android {
compileSdkVersion ...
defaultConfig {
ndk {
// setup so arch
abiFilters 'armeabi'// 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
}
}
}
//applu Bugtags plugin
apply plugin: 'com.bugtags.library.plugin'
//Bugtags config
bugtags {
//upload mapping file
appKey "APP_KEY"
appSecret "APP_SECRET"
mappingUploadEnabled true
trackingNetworkEnabled true
}
dependencies {
...
compile 'com.bugtags.library:bugtags-lib:latest.integration'
}
- Add three callbacks in your base Activity class:
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();
Bugtags.onResume(this);
}
@Override
protected void onPause() {
super.onPause();
Bugtags.onPause(this);
}
@Override
public boolean dispatchTouchEvent(MotionEvent event) {
Bugtags.onDispatchTouchEvent(this, event);
return super.dispatchTouchEvent(event);
}
}
```
## Step 3:
* Create subclass of Application,initialize Bugtags in onCreate() method:
```java
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
//initialize here
Bugtags.start("YOUR APPKEY", this, Bugtags.BTGInvocationEventBubble);
}
}
- Modify AndroidManifest.xml,use MyApplication:
<application
android:name=".MyApplication"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
....
</application>
# ProGuard configurations for Bugtags
-keepattributes LineNumberTable,SourceFile
-keep class com.bugtags.library.** {*;}
-dontwarn org.apache.http.**
-dontwarn android.net.http.AndroidHttpClient
-dontwarn com.bugtags.library.**
# End Bugtags
For more information about Android Studio and gradle, please visit: Android Developer Site.
- Invoke event:
- BTGInvocationEventBubble: Show floating circle in app.
- BTGInvocationEventShake: Show floating circle by shake.
- BTGInvocationEventNone: Show no floating circle, capture crash bug only(if allow), this is recommended to be used in release build.
- Send caught exception:
- Bugtags.sendException(Throwable ex);
- Send feedback:
- Bugtags.sendFeedback(String msg);
We are offering a bleeding edge builds on canary chanel, you can enjoy the new features in the first place!
- Add repository in your project's build.gradle
buildscript {
repositories {
mavenCentral()
jcenter()
maven{
url "https://dl.bintray.com/bugtags/maven"//added
}
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
classpath 'com.bugtags.library-canary:bugtags-gradle:latest.integration'//modify
}
}
allprojects {
repositories {
jcenter()
mavenCentral()
maven{
url "https://dl.bintray.com/bugtags/maven"//added
}
}
}
- Change your dependency in your module's build.gradle
apply plugin: 'com.bugtags.library.plugin'
dependencies {
compile 'com.bugtags.library-canary:bugtags-lib:latest.integration'//modify
}
- Fix: Fixed rare OOM exception on resending cached issues.
- Enhancement: Set Bugtags.log max lines limit to 1000.
- Enhancement: Upgrade cache system.
- Fix: Fixed issue that user logo is invisible after sign in.
- Enhancement: Optimize initialization process, add start option
startAsync
andstartCallback
, please refer: API Reference. - Feature: Added quick sign in, account that had signed in will be save and list, click item to sign in, long click to delete, still work after uninstall and re-install.
- Feature: Added new start option:
enableUserSignIn
, you can set this flag according to your requirement. - Feature: Added plugin system,please refer: API Reference.
- Feature: Added first official plugin: BugtagsInsta supports real-time tracking.
- Fix: Fixed issue related to external storage permission.
- Fix: Fixed issue that stop tracking userstep doesn't take effects.
- Fix: Fixed rare issue that location will be null.
- Fix: Fixed readable log for http request error.
- Enhancement: Malformed appKey checking.
- Enhancement: Encrypted appKey.
- Fix: Fixed bug in crash report, battery level is inaccurate.
- Fix: Fixed bug in network tracking when content-type is null.
- Fix: Fixed bug in logo display after login.
- Feature: Added auto proguard mapping upload plugin, support different appKey for every build variant.
- Minor bug fixes.
- Fix: Fixed bug related to tracking in httpurlconnection.
- Enhancement: Improved overlay permission granted logic in Andoid 6.0, only requested in needed.
- Fix: Fixed rare bug that bubble invisible after splash page.
- Fix: Fixed bug related to network tracking in okhttp.
- Fix: Fixed bug bug in screenshot on devices with soft navigation bar.
- Fix: Catch exception that might happen in screenshot.
- Fix: Tuned timeout for data upload, to prevent error in bad quality network.
- Fix: Fixed ssl error happen in sending data via https.
- Enhancement: Supported
okhttp3
network request tracking. - Enhancement: Supported
loopj/android-async-http
network request tracking. - Enhancement: Added
uploadDataOnlyViaWiFi
start option, allow only send in WiFi network. - Enhancement: Added
currentInvocationEvent
API, accessing the current invocation mode. - Minor bug fixes.
- Enhancement: Network request tracking(support HTTP / HTTPS protocol),disable by default, set
trackingNetworkEnabled true
to open, please refer:network-demo. - Enhancement: Retrieve bubble mode from server configuration.
- Fix: Fixed assignee list retrieving error.
- Fix: Fixed rotation make bubble disappear.
- Fix: Fixed issue that ui appearance not changed after priority set.
- Minor bug fixes.
- Fix: Fixed rare issue that bubble disappears
- Fix: Fixed ineffective sslv3 solution in v1.1.1
- Minor bug fixes.
- Compatibility: Java 1.6 suported.
- Enhancement: Removed phone permission.
- Fix: Fixed sslv3 protocol issue.
- Minor bug fixes.
- Feature: Supported
cocos2d-x game
screenshot(need to build package by gradle
). - Feature: Added
callback before and after sending issue
. - Feature: Added
manually invoke screenshot
. - Fix: Fixed competing thread bug on resending issue.
- Minor bug fixes.
- Fix: Fixed issue related to user step timestamp, with better layout.
- Fix: Fixed issue that some customized android ROM's missing sdcard.
- Change reference to weak reference,
prevent potential memory leak
.
- Enhancement: Screenshot with
toast and dialog
. - Enhancement: Performance improving.
- Feature: Added API for
custom version name & version code
. - Minor bug fixes.
- Enhancement: Supported
tartgetSdkVersion=23(Android M, 6.0)
. - Feature: Long-press on "+" button to
restart logging
. - Feature: Supported anonymous report options.
- Enhancement: Improved crash collecting policy,
disable when debugger connected
. - Enhancement: Added CPU architecture for device information.
- Enhancement: Improved console log policy.
- Enhancement: Supported
uses-permission customization
. - Feature: Start options for crashWithScrenshot.
- Enhancement:
Crash with photo
, start options. - Enhancement: Performance improving.
- Minor bug fixes.
- Enhancement: Performance improving.
- Feature: Sending progress.
- Enhancement: Simplified dependency.
- Enhancement: Improved integration.
- Enhancement: Performance improving.
- Minor bug fixes.
- Official release.
- Pre-release.
This demo is BSD-licensed.