【发布时间】:2013-05-18 16:36:43
【问题描述】:
我知道有很多错误报告工具,例如ACRA,可以生成内容丰富的崩溃报告。
但我的问题是:是否可以识别不会导致崩溃的错误?例如,我收到了用户对我的应用的反馈:
图像质量非常低,放大到模糊像素,因为您没有加载完整尺寸的图像。
这个错误不会导致崩溃;在这种情况下,我怎样才能抓住他们来改进我的应用程序?因为如果用户不抱怨,我就没有意识到这个问题。
【问题讨论】:
标签: android acra bug-reporting
我知道有很多错误报告工具,例如ACRA,可以生成内容丰富的崩溃报告。
但我的问题是:是否可以识别不会导致崩溃的错误?例如,我收到了用户对我的应用的反馈:
图像质量非常低,放大到模糊像素,因为您没有加载完整尺寸的图像。
这个错误不会导致崩溃;在这种情况下,我怎样才能抓住他们来改进我的应用程序?因为如果用户不抱怨,我就没有意识到这个问题。
【问题讨论】:
标签: android acra bug-reporting
你不能。您需要在代码中使用某种方法来检测它并发送事件。 Google Analytics,例如allows you to send custom events to your analytics,但它们仍然必须由您的代码生成:
public void loadImageToView(ImageView iv) {
if (/* some criteria */)
myTracker.sendEvent("bug_report", "image_load", "failed", /* some optional value */);
// ...
}
您可以在您的应用中添加一个允许用户反馈的功能,该功能也可以发送设备信息,但我认为这是您能做的最好的事情。无法自动检测应用中的错误。
进一步阅读:
【讨论】:
ACRA 可用于报告unexpected application state 以及 Google Analytics,但您必须自己进行检测。
当检测到意外情况时,可能会报告如下:
ACRA.getErrorReporter().handleSilentException(new IllegalStateException("Low image quality: "+imageUrl));
【讨论】:
Google Mobile App Analytics 可以将其报告为Event
String approxSize=.... //"100K", "500K", "1M"
EasyTracker easyTracker = EasyTracker.getInstance(context);
easyTracker.send(MapBuilder.createEvent("Warning", "Poor quality image", approxSize, 0L).build());
我还将几乎所有捕获的异常都报告为 Analytics 事件 - details
【讨论】:
尝试使用Bugclipper。它正是您正在寻找的东西。它允许用户/测试人员在应用程序内报告问题或分享反馈。它允许屏幕截图和带有语音的屏幕录制。适用于 Android 和 iOS 应用的 Beta 测试。
附言- 我是 Bugclipper 的创始人之一。
【讨论】: