实时Bug检测工具-Bugsnag的使用

来源:互联网 发布:百中搜优化 编辑:程序博客网 时间:2024/06/05 03:55

实时Bug检测工具-Bugsnag的使用


在应用程序的开发中,经常会碰到程序crash,这是一件很苦恼的事,尤其是应用上线后。
为了解决这个问题,Bugsnag出现了,它快速的定位和解决移动应用,web应用等crash的问题。
现在简要说下它的使用步骤:

1. 登录https://bugsnag.com/;
2. 如下图,点击get started for free



3. 进入如下画面:



4. 填写完成进入如下画面,填写工程名字,选择平台:



5. 下载最新的latest bugsnag-android notifier
6. 拷贝bugsnag-android-2.0.0.jar到libs目录下
7. com.bugsnag.android.Bugsnag;
8. 在activity的onCreate()方法里添加Bugsnag.register(this, "your api key");


笔者写了一个测试程序:

package com.example.bugsnagdemo;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import com.bugsnag.android.Bugsnag;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);Bugsnag.register(this, "your api key");setContentView(R.layout.activity_main);int i = 1/0;}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
记得加:Manifest.xml文件里加<uses-permissionandroid:name="android.permission.INTERNET"/>

运行程序后,登录Bugsnag网站,选择你的应用,可以看到如下信息:

Exceptions

 
 

MainActivity.java:16 on development
2013-09-05 14:05:46 UTC

  • Stacktrace
  • Application
  • Device
  • Session
  • User
  • Occurrences (2)
  • java.lang.ArithmeticException: divide by zero

    Expand
    • MainActivity.java:16  com.example.bugsnagdemo.MainActivity.onCreate

    Caused java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.bugsnagdemo/com.example.bugsnagdemo.MainActivity}: java.lang.ArithmeticException: divide by zero

    • ActivityThread.java:1955  android.app.ActivityThread.performLaunchActivity
    • ActivityThread.java:1980  android.app.ActivityThread.handleLaunchActivity
    • ActivityThread.java:122  android.app.ActivityThread.access$600
    • ActivityThread.java:1146  android.app.ActivityThread$H.handleMessage
    • Handler.java:99  android.os.Handler.dispatchMessage
    • Looper.java:137  android.os.Looper.loop
    • ActivityThread.java:4340  android.app.ActivityThread.main
    • Method.java:-2  java.lang.reflect.Method.invokeNative
    • Method.java:511  java.lang.reflect.Method.invoke
    • ZygoteInit.java:784  com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run
    • ZygoteInit.java:551  com.android.internal.os.ZygoteInit.main
    • NativeStart.java:-2  dalvik.system.NativeStart.main

更多使用功能请查阅:https://bugsnag.com/docs/notifiers/android
注:笔者用的是Android工程测试