如何从我的Android应用程序向我的服务器发送日志信息?

时间:2014-08-07 15:13:40

标签: android crash-reports

我正在开发一款目前在Play商店中的Android应用。我一直在收到有关我无法重现的某些设备崩溃的报告,Play Store内置的崩溃诊断功能不包含足够的信息。我真正需要的是来自这些设备的Logcat信息,但似乎Android 4.1及更高版本不允许使用因安全问题而过去因此而如此受欢迎的“Log Collector”应用程序。是否有可以添加到我的应用程序中的库,允许它根据需要登录到远程服务器?我对这次崩溃了解得足够多,如果我有这样的功能,我可以在代码中的适当位置调用一些神秘的sendLogcatNow()函数。由于我寻求的信息实际上并不是崩溃的一部分(崩溃发生在以后),正常的崩溃报告工具,如Crashlytics似乎不会做我需要的,但也许他们有这个功能,它只是不突出文件。谢谢!

4 个答案:

答案 0 :(得分:8)

崩溃报告的版本很少..

  1. Hockey App
  2. Acra
  3. BugSense
  4. Android Remote stack trace
  5. 由于您的应用可以随时为自己的流程读取日志,因此您也可以自行实施。
  6. 在所有这些中,我个人更喜欢 Acra 。因为它是最有效的,并为应用程序开发人员提供了许多选择。

答案 1 :(得分:3)

我正在使用ACRA从我的应用程序中记录崩溃但是基于他们的文档,

  • 您可以将自己的变量内容或调试跟踪添加到报告中
  • 即使应用程序没有崩溃,您也可以发送错误报告

这似乎正在做你想做的事。

https://github.com/ACRA/acra

您需要运行自己的ACRA服务器(简单到运行)并让您的应用程序将崩溃日志发送到您的服务器。一切都在他们的网站上详细说明。

答案 2 :(得分:0)

我会考虑使用第三方生产崩溃系统,那里有一些。我目前正在使用Crashlytics。此特定服务允许您在运行与崩溃报告打包在一起的应用程序期间记录和设置键值对。这些服务还可以更深入地了解设备类型,操作系统和各种其他设备详细信息。

通过此设置,我创建了一个日志功能,该功能将提交给Crashlytics服务并将其记录到log cat。

答案 3 :(得分:0)

您还可以使用Google AnalyticsFlurry。但请注意,Google Analytics不记录堆栈跟踪,Flurry不支持服务器上的实时日志报告。