3 votes

Déverrouiller un Nexus 4 dont l'écran est fissuré

Récemment, une petite chute a brisé non seulement l'étui bon marché de mon Nexus 4, mais aussi le numériseur. L'écran LCD et tout le reste est parfait, mais l'écran tactile ne fonctionne que sur le quart supérieur de l'écran. Je n'ai pas de souris/clavier bluetooth et l'USB On-The-Go ne fonctionne pas pour le Nexus 4.

Malheureusement, le débogage USB est désactivé (je regrette vraiment de l'avoir désactivé). Comment puis-je le déverrouiller ou sauvegarder les données de mon téléphone ?

1voto

HasH_BrowN Points 2420

C'est le mot pour mot de http://forum.xda-developers.com/nexus-4/help/broken-digitizer-to-enable-usb-t2206706/page2 réponse de Dabyd64. Je l'ai copiée dans son intégralité à titre de référence et pour l'avoir sur le Stack Exchange.


"J'ai finalement réussi à le faire fonctionner en installant CWM recovery, qui a ADB, et en activant le débogage adb.

adb shell
mount -a

(si les deux commandes suivantes montrent l'erreur "le fichier n'existe pas", ne vous inquiétez pas, c'est ok !)

rm /data/property/persist.service.adb.enable
rm /data/property/persist.sys.usb.config

echo "persist.service.adb.enable=1" >>/system/build.prop
echo "persist.service.debuggable=1" >>/system/build.prop
echo "persist.sys.usb.config=mass_storage,adb" >>/system/build.prop"
/system/xbin/sqlite3 /data/data/com.android.providers.settings/databases/settings.db "update global set value='1' where name='adb_enabled'";
/system/xbin/sqlite3 /data/data/com.android.providers.settings/databases/settings.db "update global set value='1' where name='development_settings_enabled'";
sync
reboot

Si la commande sqlite3 affiche une erreur (commande non trouvée), alors sqlite3 n'est pas installé sur votre téléphone. Mais vous pouvez quand même le faire ! D'abord, extrayez settings.db :

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

Copiez ce fichier sur un lecteur usb ou autre. Maintenant tu as besoin de linux. Vous pouvez utiliser un DVD Ubuntu live, mais vous devez être connecté à Internet. http://www.ubuntu.com/download/desktop Je recommande d'utiliser la version 32bit pour la compatibilité. Habituellement, sqlite3 n'est pas installé par défaut.

Dans ubuntu :

sudo apt-get install sqlite3

Le mot de passe Root vous sera demandé !

Maintenant nous pouvons éditer le settings.db :

sudo sqlite3 /path_to_your_folder/settings.db
update global set value='1' where name='adb_enabled';
update global set value='1' where name='development_settings_enabled';
.exit

Maintenant nous avons le settings.db modifié et prêt ! Copiez à nouveau ce settings.db sur une clé USB ou autre, retournez sous Windows ou restez sous Linux si vous avez déjà un ADB fonctionnel.

adb push settings.db /data/data/com.android.providers.settings/databases/
adb shell "chown system.system /data/data/com.android.providers.settings/databases/settings.db"
adb shell "chmod 644 /data/data/com.android.providers.settings/databases/settings.db"
sync
reboot

Terminé ! ADB devrait fonctionner au démarrage. J'ai dû utiliser "mass_storage,adb" parce que "mtp,adb" ou juste "adb" ne fonctionnait pas. Je pensais que le téléphone ne fonctionnait pas dans la mémoire de masse, mais qui s'en soucie ! ADB l'était !"


Je les ai utilisés sur ma Nexus 7 quand j'ai cassé mon digitizer et que adb était désactivé. Cela a fonctionné parfaitement, cela devrait fonctionner tout aussi bien avec TWRP.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X