编写程序察看kmsg信息,请教大神帮助!!!
想写个android程序来实时监听内核的log信息,并将其存储在sdcard的某一地方。现思路如下:Processprocess=Runtime.getRuntime()...
想写个android程序来实时监听内核的log信息,并将其存储在sdcard的某一地方。现思路如下:Process process = Runtime.getRuntime().exec(mCmd); //mCmd为cat /proc/kmsg 读取process.getInputStream()的输入流并通过BufferedWriter写到SD卡上但是一直没有办法实现,更改了kmsg文件的权限也不可以,将应用的AndroidManifest.xml文件中加上android:sharedUserId="android.uid.system"也不可以。实在没有办法了。。。。。。谁还有思路或是解决过类似问题,不胜感激(dmesg不够全,所以必须是kmsg中的内容)。
展开
2个回答
展开全部
题主解决了吗?目前有类似的需要,不知道该怎么做
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
查了一些资料,自己也测试了一下,本身/proc目录是一个特殊的文件系统,而/proc/kmsg是一个特殊的文件,每次调用read之后,它的内容就会被清空,同时一直阻塞。以下是关于kmsg的描述4,/proc/kmsg 这个文件用于检索用printk生成的内核消息。任何时刻只能有一个具有超级用户权限的进程可以读取这个文件。也可以用系统调用syslog检索这些消息。通常使用工具dmesg或守护进程klogd检索这些消息个人测试之后,没发现dmesg和kmsg的内容有什么差别 查看原帖>>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询