【问题标题】:"Unable to open log device '/dev/log/main': No such file or directory"“无法打开日志设备'/dev/log/main':没有这样的文件或目录”
【发布时间】:2011-08-04 12:49:39
【问题描述】:

我是 Android 开发新手,买了一个便宜的华为 Sonic(显然是 U8650),这样我就可以测试我在实际设备上制作应用程序的第一次尝试。

但是,每当我尝试在设备上使用 'adb logcat' 或 'adb shell' 然后 'logcat' 时:

Unable to open log device '/dev/log/main': No such file or directory

我已经在设置 ​​-> 开发者中启用了 USB 调试。

我只是对 Android 了解得不够多,不知道这是否是我能解决的问题。

我发现了另外两个问题类似的问题:

/dev/log/main not found

??-?? ??:??:??.???: INFO/<unknown>(<unknown>): Unable to open log device '/dev/log/main': No such file or directory

...但他们都使用了某种禁用日志记录的非标准内核。我的手机是开箱即用的库存手机。

这是一款非常便宜但运行良好的 Android 2.3 手机,所以希望它不会完全浪费金钱。

任何帮助将不胜感激。

【问题讨论】:

  • 当我以为所有的门都关上了时,你打开了一扇新的,拥抱谢谢 :) 你让我的手机又有价值了 ;)

标签: android android-2.3-gingerbread


【解决方案1】:

拨打这个:*#*#2846579#*#*
将出现服务菜单。
进入“项目菜单”->“后台设置”->“日志设置”

打开“日志开关”并将其设置为开启。
打开“日志级别设置”,设置你想要的日志级别。

重启手机。

【讨论】:

  • HTC Incredible S Custom CM10.1 JB 上没有任何反应 =(
  • 重启手机前别忘了关闭fastboot。
  • 什么都没发生,因为我在数字后面输入了*#*# 而不是#*#*
  • 有人知道三星s8的隐藏菜单吗?
【解决方案2】:
  1. 打开:/system/etc/init.d/×××(不同ROM上的文件不一样,找对的文件)
  2. 找到以下行:rm /dev/log/main
  3. 将行更改为:# rm /dev/log/main(删除行,rm = 删除,以防您想知道)
  4. 保存并重新启动

【讨论】:

  • 感谢这个方法。在我的手机(rom:4.0.4),/system/etc/init.d/××× xxx文件是'speedy'
  • 谢谢!截至今天,在使用“非官方 CM9”的 LG p970(擎天柱黑色)中,您必须在 02logger 和 12cleaner 中对此进行注释。
  • 我无法更改这些文件中的任何内容 :(
  • @haythemsouissi 你是根吗?
  • 谢谢!对于我的 Vega 熨斗,xxxx 是 69removelogger => 明确的名称 :)
【解决方案3】:

我正在分享我的案例和解决方案:

我的手机有一个面向性能的果冻豆版本(确切地说是一个 Slim Bean ROM),带有一个信号量内核(你可以识别它,因为当手机启动时,会显示信号量标志)。这种 ROM 默认禁用日志记录,所以我必须下载 Semaphore Manager 应用程序(您可以从 here 下载它)。之后,在“模块”部分,我必须打开 Logger 选项,如图所示

重新启动,logcat 现在应该可以工作了!

【讨论】:

  • 三星 Galaxy S 上的精确解决方案 - Captivate,带有 Slim Bean 4.2.2 和 Semaphore Kernel。
  • 嗯.. 任何人都得到了运行 android 4.4 tigrouzen ROM 的 S8500 wave 设备的答案?以前的工作都没有。尝试手动将该文件放回原处,结果被读取:意外的长度错误。
【解决方案4】:

我终于找到了答案!

我又漫无目的地查看是否有任何关于此的更新,并在 xda-developers 上看到一篇关于略有不同的华为设备存在相同问题的帖子。

http://forum.xda-developers.com/showpost.php?p=17774398&postcount=93

它确实有效。我的华为 Sonic (U8650) 现在已经完成了 logcat 日志记录。

为不放弃而欢呼三声。


解决方案,从 xda 复制(以防它被删除等):

There is a hidden service-menu where you can set loggin up. The
service-menu is started by "dialing" this phone number:

*#*#2846579#*#*

【讨论】:

  • 也在另一个 stackoverflow 问题中回答:stackoverflow.com/questions/7021939/…
  • 当我在我的任何一部手机上输入电话号码序列时,它们都会做同样的事情:擦除屏幕上的 ph 号码,什么也不做......
【解决方案5】:

我的 Samsung Captivate 上有一个自定义 rom,但我的方法可能也适用于其他人:

打开 CMD 或终端并输入:

adb shell
logcat-enable
reboot

我拥有的 rom 是 Continuum v6.1,但这仍然适用于其他人。
如果你的手机上有终端模拟器,你也可以这样做:

logcat-enable

然后重启手机。我没有尝试过,但它可能也会起作用。我的手机也已植根 - 不知道这是否会有所不同。

【讨论】:

  • @ulidtko 我并不感到惊讶。我猜这是某些内核的功能。有些包括 logcat-enable 和 logcat-disable 命令,但股票内核可能不会。如果我想出更多,我会发布它。
【解决方案6】:

重启华为设备就够了

adb shell
reboot

【讨论】:

  • $ reboot 显示我reboot: Operation not permitted ?
【解决方案7】:

我遇到了完全相同的问题。 xda-developers 有人在 msg #33 中写了如下内容

http://forum.xda-developers.com/showthread.php?t=1169869&page=4

无法植根的原因之一是这款手机已移除 来自android的“Logcat”机制。所以,这使得大多数生根方式 故障。

也许对也许错我不知道。无论如何它给出了一些关于这个案子的想法。

【讨论】:

  • 是的,我实际上已经成功地启动了设备(使用同一线程中的指令,实际上:forum.xda-developers.com/…),但我想我需要一些方法来替换它当前的 ROM一个没有删除 logcat 的...
  • 我在这里试过 Roms :(wiki.modaco.com/index.php/Huawei_Firmware_U8650).It 据说西班牙语 Yoigo 可以工作,但我的设备设置为与销售运营商的 ROM 一起工作,所以遇到了一个 sim lock。我使用 java.util 管理了一个方法.logging API 并编写了一段代码将日志转储到 sdcard 上的文件中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-06
  • 2019-04-07
  • 2017-05-04
相关资源
最近更新 更多