最近遇到了完全相同的问题(在朋友的Nexus S上运行的Android 4.0,屏幕和数字转换器完全坏了,并且adb关闭了,但运行的是Android 4.0):
获取在启用adb的情况下运行的恢复系统。然后使用adb控制台访问设备的数据并创建备份。在Nexus S上,您无法使用sdcard从设备中获取数据,因此您需要使用adb。
先决条件:
- 手机确实具有启用了启动命令的快速启动模式
- 手机仍然可以使用(屏幕除外)
- 已安装SDK(带有有效的adb + fastboot可执行文件)
- 下载到/tmp/cwm.zip的CWM恢复映像(启动时已启用adb)
- 安装了uudecode的Linux(Ubuntu上的软件包“ sharutils”的一部分)
操作方法:
a)以快速启动模式启动设备,然后以这种方式启动CWM恢复
me@workstation:~$ fastboot boot /tmp/cwm.zip
b)等待一段时间以启动CWM,然后登录到设备
me@workstation:~$ adb shell
shell@android:/ $ mkdir -p /tmp/backup/data /tmp/backup/sdcard
根据您的手机,用真实的设备名称替换DATA_DEV和SDCARD_DEV ,这很可能是以下之一:
注意事项和进一步说明:
- 为什么
uuencode
呢 ADB控制台似乎拦截了数据流,并且显然在每个换行符之前插入了一个回车符。在通过adb的stdout传输数据之前先对数据进行uenencoding可以防止这种情况。
- 难道不是在加密设备上工作
- 您也可以在未安装的设备上重复该过程,并
/dev/block/*
一一传输所有数据,然后找出哪个用于后续操作。
- 您需要自己找到合适的CWM恢复映像