我们的首选是仅自动上传异常。对于客户端日志记录,我们更喜欢有选择地设置标志或提供一个特殊的调试版本给遇到问题的客户端。可以使用Thread.setDefaultUncaughtExceptionHandler()来捕获异常。但是需要注意一些细节(主要是在异常处理完成后需要退出应用程序)。参见:http://groups.google.com/group/android-developers/browse_thread/thread/c32e8c6120bed5c5/54c28b745c0fca80 对于日志收集,请参见android-log-collector。不需要使用整个包,请查看源代码并复制粘贴。
为了使文章更完整,谷歌在新版Android中嵌入了崩溃报告服务。对于旧版本,还没有支持该服务的几个可用服务。在已经提到的服务中,我推荐这两个: ACRA(崩溃报告 - 开发者或/和用户选择的多种报告选项) HockeyApp(测试/崩溃报告网络平台,配有支持库。如果你是认真的开发者,试用版但付费版值得。也支持iOS) 然而,大多数这些库会使你的应用程序变得有点“沉重”,但更重要的是使用它们需要互联网权限。如果您的应用程序没有其他原因需要互联网,那么如果没有任何功能需要它,您需要互联网可能会引起用户怀疑。最后一句话:尽可能多地使用谷歌已经为Android提供的服务,而不是第三方库。干杯;)