如何从我的Android应用程序中获得崩溃数据(至少堆栈跟踪)?至少在我自己的设备上工作时可以通过电缆检索,但理想的情况是,从我的应用程序在野外运行的任何实例中都可以,这样我就可以改进它,使它更可靠。
当前回答
这是非常野蛮的,但是可以在任何地方运行logcat,所以一个快速而肮脏的hack是在任何捕获块中添加getRuntime()。Exec ("logcat >> /sdcard/logcat.log");
其他回答
我还找到了一个更好的web应用程序来跟踪错误报告。
https://mint.splunk.com/
配置步骤少。
使用上面的链接登录或注册并配置。一旦你创建了一个应用程序,他们将提供如下所示的一行来配置。
Mint initAndStartSession (YourActivity。这“api_key”);
在应用程序的build.gradl中添加以下内容。
android { ... 存储库{ Maven {url "https://mint.splunk.com/gradle/"} } ... } 依赖关系{ ... 编译”com.splunk.mint:薄荷:4.4.0” ... }
添加上面复制的代码,并将其添加到每个活动中。 Mint.initAndStartSession (YourActivity。这个,”api_key”);
就是这样。你登录并进入应用程序仪表板,你会得到所有的错误报告。
希望它能帮助到别人。
刚开始使用ACRA https://github.com/ACRA/acra使用谷歌形式作为后端,它非常容易设置和使用,这是默认的。
但是发送报告到谷歌表单将被弃用(然后删除): https://plus.google.com/118444843928759726538/posts/GTTgsrEQdN6 https://github.com/ACRA/acra/wiki/Notice-on-Google-Form-Spreadsheet-usage
无论如何,可以定义自己的发件人 https://github.com/ACRA/acra/wiki/AdvancedUsage#wiki-Implementing_your_own_sender 例如,你可以试着给发件人发电子邮件。
用最少的努力就可以将报告发送到bugsense: http://www.bugsense.com/docs/android#acra
注意:无bug感知账号每月最多500个报告
您也可以尝试[BugSense]原因:垃圾邮件重定向到另一个url。BugSense收集并分析所有崩溃报告,并为您提供有意义的可视化报告。它是免费的,而且只需要一行代码就可以进行集成。
声明:我是联合创始人
迟来的我支持并相信ACRA是最好的选择。它易于设置和配置。我已经创建了一个详细的指南,使用ACRA获取坠机报告,并使用MandrillAp将其发送到我的电子邮件地址。
链接到帖子:https://androidician.wordpress.com/2015/03/29/sending-crash-reports-with-acra-over-email-using-mandrill/
github上的示例项目链接:https://github.com/ayushhgoyal/AcraSample
谷歌Firebase是谷歌最新的(2016)方式,为您提供崩溃/错误数据在您的手机。 将它包含在您的构建中。Gradle文件:
compile 'com.google.firebase:firebase-crash:9.0.0'
致命崩溃会自动记录,不需要用户输入,你也可以记录非致命崩溃或其他事件,如下所示:
try
{
}
catch(Exception ex)
{
FirebaseCrash.report(new Exception(ex.toString()));
}
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- 如何在TextView中添加一个子弹符号?
- PreferenceManager getDefaultSharedPreferences在Android Q中已弃用
- 在Android Studio中创建aar文件