我可以使用adb启用USB调试吗?


17

我拥有三星Galaxy S3,并且显示屏坏了,并且USB调试也设置为关闭。

如何使用./adb命令启用它?我已经完成了以下步骤:

  • data/data/com.android.providers.settings/databases/settings.dbadb_enabled值从0 更改为1。
  • 还编辑build.prop/system

完成所有这些操作后,手机似乎变砖了,无法打开。我要做的就是启用USB调试并将其连接到Vysor(beta),以便可以在计算机上对其进行控制。


1
欢迎!好问题。+1。为什么您要远程控制手机?
unforgettableidSupportsMonica

谢谢...因为屏幕坏了,我想浏览其中的数据。虽然我昨晚想通了... :)
TheOnlyAnil

启用USB调试的正确方法是解压缩boot.img,编辑init.rc(启用adb,然后禁用RSA验证),重新打包boot.img,并引导boot.img,而不会闪烁。一旦确认编辑工作正常,然后将boot.img刷新到设备。
HasH_BrowN

Answers:


12

我让它工作了:)

注意:这需要解锁的引导程序。

  • 在中将设备连接到Mac或PC recovery mode。(由于屏幕破裂,我不得不在脑海中映射该过程)。
  • 现在,在计算机中打开终端/ CMD,然后转到platform-tools/。键入并输入./adb devices以检查设备是否以恢复模式连接。
  • 现在,键入./adb shell mount data./adb shell mount system挂载相应的目录。
  • persist.sys.usb.config使用以下命令在系统中获取文件./adb pull /data/property/persist.sys.usb.config /Your directory
  • 现在,在文本编辑器中打开该文件,然后将其编辑mtp,adb并保存。
  • 现在将文件推回设备; ./adb push /your-directory/persist.sys.usb.config /data/property
  • 获取build.prop文件; ./adb pull /system/build.prop /your-directory
  • 添加这些行:

    persist.service.adb.enable = 1                                                    
    persist.service.debuggable = 1
    persist.sys.usb.config = mtp,adb
  • 将build.prop推回设备; ./adb push /your-dir/build.prop /system/

这样,您就可以在设备上启用USB调试。但是您仍然无法连接。为什么?因为它要求RSA验证。如果您可以查看显示屏,则可以轻松点击YES以授权该设备。我目前正在研究绕过此问题。我想重振我死去的电话。如果您知道执行此操作的任何方法,请分享:)


您是否正在运行自定义恢复?
Firelord

不,它是库存恢复。
TheOnlyAnil

1
关于按用户进行的RSA确认部分,如果您已启动至Android OS,并且在某种程度上被确认屏幕显示了用于确认的对话框,那么您很可能会adb shell input keyevent选择YES。在此处查看Keyevent 。这是在黑暗中拍摄的,但很值得射击。
Firelord

@Firelord我试图这样做。但是它说授权错误。看来我必须先授权才可以做任何事情……
TheOnlyAnil

1
啊!很抱歉提出无法解决的建议。我在想什么 如果未授权ADB访问,则将无法进行任何操作adb shell input。再次抱歉!我将看看是否有某种方式可以绕过授权。
Firelord

4

对于您要求绕过的RSA验证,我不知道它是否可以在您的设备中使用,但是在我的小实验中它可以使用。在Lollipop中,ADB密钥(授权后)保存在中/data/misc/adb/adb_keys。您的私钥已保存在计算机中。在Linux中,目录位置为$HOME/.android/。在Windows上通常会转换为%USERPROFILE%\.android,但是C:\Windows\System32\config\systemprofile\.android在某些情况下,键可能会终止。(来源

ashoke 在此处描述一种方法,该方法可能有助于绕过授权。

但是,在我的棒棒糖中,方法各不相同。我注意到在我的主要和次要棒棒糖ROM中adb_keys它实际上具有相同的密钥。我要做的就是撤销辅助ROM的授权(文件自动删除),从PC断开设备连接,adb_keys从主ROM 复制到辅助ROM,将设备连接到PC并瞧!没有要求我提供该授权。我使用仔细检查了授权adb devices,一切都很好。

首先尝试链接的答案。授权其他Android手机,将其密钥从恢复模式复制到您的设备中,然后查看其是否有效。


嘿,谢谢。我将adb_keys从注释2转移到了S3,它起作用了:)
TheOnlyAnil 2015年

这是使接受的答案正确的必要信息。做得好。+1
HasH_BrowN16年

2
对于那些运行基于Unix操作系统的用户来说,adb push ~/.android/adbkey.pub /data/misc/adb/adb_keys运行可靠。
克里斯·奥林

@ChrisOlin:谢谢您的投入。但是我确实假设adb应该以root模式(adb root)运行,否则,用户将无法直接将文件放在/ data / misc /下。正确?
Firelord

不完全是,但是您提出了一个很好的问题。如果您尝试通过ADB启用USB调试,则需要将其引导到恢复中才能完成此操作。恢复外壳程序(至少使用TWRP)默认为root。如果不是,则是的,用户将无法直接推送到/ data / misc。
克里斯·奥林
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.