如何在Android程序中使用ACRA3(How to install ACRA3 in your Android application)

来源:互联网 发布:中国移动 网络强国 编辑:程序博客网 时间:2024/06/05 15:45

一、介绍(Introduction)

ACRA 允许你的Android应用将崩溃报告以谷歌文档电子表的形式进行发送。本教程将引导应用程序项目中安装ACRA

ACRA allows your Android application to send Crash Reports in a Google Docs spreadsheet. This tutorial will guide you in installing ACRA in your application project.

 

二、设置好你的项目(Setting-up your project)

按照以下步骤在现有的应用程序项目中安装ACRA库

Step by step installation of the ACRA library in an existing application project:

  • 下载acra库( http://acra.googlecode.com/files/acra-3.1.2.zip)并打开压缩包
  • 登录到您的谷歌文档帐户
  • 导入压缩包中的 CrashReports-template.csv (acra-3.1.2/CrashReport/doc)
  • 打开导入的文档
  • 按照自己的喜好重命名
  • 在菜单上,单击窗体/创建表单
  • 为了启动“保存”按钮,请添加描述信息
    • 如果您使用谷歌应用服务的私人领域,一定要取消选择"Require yourdomain.com sign-in to view this form."
  • 保存表单
  • 复制在表单创建页面底部的链接中的formkey
  • 打开eclipse项目
  • 创建一个 lib 目录
  • 在lib目录中添加 acra-3.1.2.jar
  • 右击 jar文件,并且添加到build path
  • 在package的root目录创建一个新的类
    • 继承android.app.Application,并命名如: MyApplication
    • MyApplication类声明之上,添加annotation@ReportsCrashes,并指定谷歌文档的formkey

 
MyApplication 类中, 覆盖 onCreate() 方法并添加ACRA初始化代码
 
打开android配置文件AndroidManifest.xml
  • 设置项目的Application为MyApplication
  • 添加权限声明android.permission.INTERNET

 

   

  • 结束THE END - 下次应用崩溃的时候,ACRA会将崩溃报告添加到谷歌文档电子表中.
  • 建议 :可以在谷歌文档电子表格的preferences页面,设置通知规则,那么当有报告发送的时候,就会受到邮件通知了!

     

     

     

    三、高级用法(Advanced Usage

     

    用户通知

    默认情况,ACRA仅仅是将崩溃报告发送到服务端。从使用应用的用户来看,应用崩溃的时候仅仅是"Force Close"对话框是不够的。

    作为开发者,你可能更喜欢通知用户崩溃报告已经发送了...... 为什么不允许他描述一下崩溃之时他正在所操作的动作呢?

    ACRA 提供了这些选项,并且允许定制崩溃报告通知。

    有两种通知模式: 

    • display a simple Toast with your developer designed text

     

    • display a status bar notification, then offering the user a dialog asking him to send the report or not, with an optional comment field you can chose to add or not.

     

     

    Enabling user notification only requires you to add parameters to the @ReportsCrashes annotation :

    • Toast notification:
    @ReportsCrashes(formKey="dGVacG0ydVHnaNHjRjVTUTEtb3FPWGc6MQ",
    mode
    = ReportingInteractionMode.TOAST,
    resToastText
    = R.string.crash_toast_text)
    public class MyApplication extends Application {
    ...

    strings.xml 中

     状态栏通知:

     

    strings.xml 中:

     

    In your AndroidManifest.xml

     

    详细内容请访问:http://code.google.com/p/acra/wiki/ACRA3HowTo 

     

     

      

     

     

     

    原创粉丝点击