Answers:
Market中的这些免费应用程序声称能够显示您的logcat,并且没有提及root。应该只花您几分钟来尝试一下:
编辑:感谢@mente提醒我,这些应用程序将只让您查看旧版Android中的完整日志文件。Android 4.1围绕日志文件引入了新的安全模型,这意味着应用程序只能读取自己的日志文件和日志文件条目,而无法读取由系统或其他应用程序编写的日志文件条目。
但是,仍然存在一种方法,使应用程序的用户可以生成要发送给开发人员的应用程序最近的日志条目的日志文件,还可以通过电话的所有者授予权限,以允许应用程序在没有完整root用户的情况下读取日志文件。确实需要您使用ADB命令,不幸的是,这使大多数普通电话用户无法使用它:
如果希望用户为您提供调试信息,则可以让他们生成一个错误报告,其中包含电源+调低音量+调高音量,其中包括日志和许多其他数据,并自动调出其电子邮件应用程序以发送所有信息(加上屏幕截图)。我们只是在讨论我们应该有一种更简单的方式来生成这些内容,我将考虑在设置应用程序中添加一些内容。
我也已经开始介绍“开发”权限的概念,将读取日志分类为。这允许该应用请求权限,但不能在安装时获取它。但是,一旦安装,您可以 使用adb shell命令授予它。稍后,我希望在系统中有一个UI可以执行此操作,但是我们将暂缓执行该操作,以防止出现此情况。
摘自Android框架工程师Dianne Hackborn 在Google网上论坛上的帖子。我的重点。
提到的授予应用程序读取日志权限的ADB命令是:
adb shell pm grant <pkg> android.permission.READ_LOGS
此设置应在应用程序的重启和升级后有效(但不能卸载/重新安装)。
不,您不需要root即可获取logcat信息。
为此,您可能想使用SDK随附的adb工具下载Android SDK并运行“ adb logcat”。或者,您可以安装ADT Eclipse插件并使用其方便的流式Logcat查看器。
应用程序Android System Info可以将日志信息输出到屏幕,据我所知,该信息与logcat吐出的日志信息相同。
Logcat不需要root。简单-它是针对不同Android版本的实际标准,无论您是否扎根,它都是Android的一部分,并且是诊断问题的标准方法,例如-安装应用,应用程序强制关闭,您向该应用程序的开发人员投诉,无论您是否扎根,开发人员都会要求“通过logcat发送”的可能性很高!
请记住,aLogCat是一种收集信息的方式,可以选择登录到网页布局或纯文本,如果您安排它以一定的频率(例如每15分钟一次)登录,则SDCard会很快填满。
另一方面,logcat的使用方式将取决于内核的存储量-在ROM使用的任何内核中,它是从内核级别记录日志的源,在该内核中它为logcat服务保留内存可以在drivers/staging/android/logger.c
使用适当的定义中找到,例如:
DEFINE_LOGGER_DEVICE(日志主,LOGGER_LOG_MAIN,64 * 1024)DEFINE_LOGGER_DEVICE(日志事件,LOGGER_LOG_EVENTS,256 * 1024)DEFINE_LOGGER_DEVICE(log_radio,LOGGER_LOG_RADIO,64 * 1024)DEFINE_LOGGER_DEVICE(日志*
同样,里程会有所不同,此类ROM的某些开发人员将选择最小化消耗以减少内存开销。