我想使用一些第三方软件清除我忘记的设备的屏幕解锁图案。它们需要启用USB调试,但我的Android系统中未启用它。

如何通过恢复模式或Fastboot打开USB调试?

评论

事实证明,这似乎又是一个XY问题。除了要尝试使您的解决方案正常工作(启用USB调试)外,您的问题还应该包括您已锁定自己并忘记了PIN码。完全不同的问题,例如在我们的锁定标签Wiki中。请从那里开始阅读。如果您无法通过这些提示解决问题,请提出一个新的特定问题,包括尝试过的内容,遇到的问题,设备和Android版本。祝你好运!

这个问题基本上不是“我该如何破解Android手机”?

#1 楼

有关详细信息,请参见我们的usb-debugging标签-wiki(我刚刚在其中添加了它们):


默认情况下,USB调试已禁用,且带有备用ROM(某些自定义ROM)但是默认情况下启用它)。要打开或关闭它,您可以在“设置”›“开发”中找到相应的开关,该部分最初在Android 4.2及更高版本中隐藏。您可以通过以下方法使此部分可见:设置›关于设备,然后“敲打”告诉ROM的构建版本,直到祝酒消息祝贺您成为开发人员为止。


但是,您的问题是无法正常启动设备,因此无法达到上述设置部分,请查看以下问题:


如何备份破碎的屏幕电话何时未启用USB调试?
在禁用调试模式的情况下屏幕破裂。如何重新启用ADB?


评论


tnx。但是我知道这一点。例如我忘记了我的设备模式。我可以使用这个白色的第三个软件,如shuami或whit adb命令。但是他们都需要USB调试来删除模式而无需删除文件。如果关闭,我的问题是Shine。必须启用它。如何?

–耶拿比克塔克(Jenabictak)
2015年6月10日在16:39



这就是为什么您应该在问题中包含尽可能多的详细信息。有人应该怎么期望呢?好的,我做到了–这就是为什么我链接了这两个问题(请点击链接)。

– Izzy♦
15年6月10日在18:15

#2 楼

基于OP在Izzy的回答下面的注释中所做的澄清,如果有人的设备被锁定并且在“设置”下未启用ADB,则我提出以下解决方案。

请注意,此方法已在Stock Android 4.2.1和Stock CM 12.0(Android 5.0)上进行了测试,两个设备均具有自定义恢复(始终默认启用ADB)。如果您的Stock Recovery允许ADB Shell访问,那么您也可以考虑使用此解决方案。从库存恢复内部查看它是否与前者的环境兼容(是否可以使用ADB shell)。 br />
对于Jellybean 4.2.1:


引导到Recovery并挂载数据分区。

在PC上打开外壳并键入:

adb pull /data/property/persist.sys.usb.config ~/


~/替换为操作系统的主目录。


在文本编辑器中打开该文件,您可能会看到mtp写在那里。将其更改为mtp,adb

请注意,如果行终止符是“ DOS终止符”,则Android有时无法理解文本文件的更改,而记事本可能会在Windows上执行(我的操作系统是Linux,所以这里没有问题)。

在这种情况下,我建议不要使用adb pull,而是这样做:

adb shell
echo 'mtp,adb' > /data/property/persist.sys.usb.config


您可以使用以下命令验证echo命令是否覆盖了文件:

adb pull /data/property/persist.sys.usb.config ~/


,并在某些文本编辑器中查看文件的内容。

卸载Data并重新启动进入Android OS。 USB调试可能会启用。

对于Lollipop 5.0:

JB 4.2.1用户也可以遵循此方法,如果先前的方法不适用于他们。


引导到恢复并安装数据分区。
重复JB 4.2.1方法中使用的步骤2和3。 settings.db。类型:

adb pull /data/data/com.android.providers.settings/databases/settings.db ~/


也将其备份到其他位置,然后在SQLITE编辑器中打开文件。我正在运行Linux,SQLite的数据库浏览器运行良好。它也可用于Windows OS / OSX。
global表中,将以下值更改:



adb_enabled1


development_settings_enabled1



检查verifier_verify_adb_installs表中的1是否设置为globalsecure表:



adb_notify1


adb_port-1


这些步骤6和7中的检查不是必需的,但应该进行检查,以便在解决方案不适合您的情况下使故障排除变得非常容易。


将更改保存在settings.db中并复制回去通过键入以下内容进入Android:

adb shell 
rm /data/data/com.android.providers.settings/databases/settings.db
exit
adb push ~/settings.db /data/data/com.android.providers.settings/databases/


删除(rm)命令不是必需的,因为adb push应该覆盖该文件,但我为安心执行了它。

卸载Data并重新启动进入Android操作系统。亚行可能会启用。



这是在我的设备上进行测试时实际上是如何工作的。

来源:并非真正的消息来源,但从评论中得到了提示在这个答案下。

评论


而且我认为可以通过这种方式清除模式(通过文件编辑),而无需在Android中打开USB调试。不知道如何!

–Firelord♦
15年6月11日在6:08

如果adb无法正常工作(我认为这个问题与之相关),您如何使用adb来拉/推文件?

– PaulG
16年2月7日在11:30

@PaulG:在开发人员选项中看到的有关USB调试的设置,所有操作都是在Android OS中运行或停止adbd守护程序。当您不在Android操作系统中时,启动环境中的设置将控制adbd是否应运行。 //自定义恢复是一个不同的环境,TWRP和CWM根据其默认设置运行adbd。这就是我在答案的第二段中指出的,需要进行自定义恢复。 //让我知道您是否仍然不清楚。

–Firelord♦
16-2-7在14:06



请注意,该问题并不是说adb无法正常工作,而是在Android OS中未启用USB调试。那是两件事。

–Firelord♦
16年2月7日在14:10

@alfetopito自Android 6.0起就删除了settings.db的概念。现在可以在/ data / system / users / 0 /中找到该数据库中的表。这些文件具有命名方案settings _ *。xml。

–Firelord♦
17年6月25日在7:54