Je suis désolé si les questions liées aux briques et aux problèmes de support sont hors sujet sur le site, mais laissez-moi essayer.
Hier, j'ai eu une panne sur mon appareil qui a provoqué un redémarrage immédiat. Après le tout premier écran de démarrage, l'appareil a redémarré, puis encore une fois juste après l'écran de démarrage. Après le dernier redémarrage, l'appareil a chargé le mode "opérationnel", mais l'écran est devenu noir. Heureusement, le mode développeur est activé sur mon appareil et je peux utiliser les fonctions suivantes adb
. La toute première tentative que j'ai faite était une sorte de screencasting comme suit :
:repeat
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png
adb shell rm /sdcard/screen.png
goto repeat
Ok, l'appareil n'est pas mort, et c'est super (j'utilise la connexion USB pour le regarder). Pour une raison quelconque, l'écran devient simplement noir après le démarrage. Tous les clics/touches semblent être détectés par l'appareil, mais j'ai l'impression qu'il était à la traîne -- peut-être à cause de 1fps produit par le script ci-dessus ou à cause de la surveillance de l'appareil screencasting à l'écran de l'ordinateur portable tout en essayant de faire quelque chose à l'appareil physiquement. Une autre note importante est que la capture d'écran est toujours en 640x480, quelle que soit la résolution/densité du périphérique cible (cela dépend probablement de la résolution de l'appareil). screencap
ligne de commande). Initialement, après le tout premier essai, j'ai également remarqué que la résolution était extrêmement faible, ce qui rendait les widgets énormes sur l'écran de verrouillage. J'ai réussi à ajuster la résolution et la densité en utilisant la fonction adb shell wm
La famille de commandes, cependant un autre problème est que l'écran de l'appareil est tourné de 90° visuellement aux captures d'écran, mais en acceptant les touches à l'écran de l'appareil comme s'il était toujours dans l'orientation portrait (quelque chose comme des pixels verticalement étirés ?).
Je ne peux pas entrer dans le mode de récupération parce qu'il est interrompu par les redémarrages que j'ai mentionnés ci-dessus, mais le mode de téléchargement maintient l'affichage. toujours allumé (jusqu'à ce que la batterie soit retirée). Je soupçonne qu'il y a un problème logiciel nécessitant de faire une réinitialisation matérielle ou d'effectuer un minuscule changement de configuration, mais je ne peux pas le faire avant d'avoir pris toutes les sauvegardes nécessaires de l'appareil. Voici les méthodes de sauvegarde que j'ai utilisées :
- Copie directe de fichiers importants à partir de la sdcard
- Essayer d'exporter/de sauvegarder des données importantes en touchant l'écran noir et en regardant le processus sur l'écran de l'ordinateur portable dans les applications qui prennent en charge les fonctions de sauvegarde/restauration (pas si facile, beaucoup plus difficile que d'utiliser un pavé tactile, et vraiment très ennuyeux).
- Copie de certains fichiers connus de moi à partir de certains
/data/data/package/
sites - TitaniumBackup (je n'ai pas réussi à le faire fonctionner -- difficile à faire fonctionner en mode "aveugle" + il se plaint de ne pas avoir assez d'espace même pour des applications minuscules)
-
adb backup
pour les paquets individuels
Malheureusement, la dernière méthode de sauvegarde, pour une raison quelconque, ne fonctionne pas pour certaines applications, et j'ai observé des symptômes très similaires à ceux décrits. aquí y aquí . Et, malheureusement, il y a certaines applications médicales dont je ne peux ignorer les sauvegardes.
Mes questions sont, en espérant qu'elles soient suffisamment pertinentes :
- Ce black-out pourrait-il être interprété comme un problème logiciel causé par le crash ? Je veux dire : il ne semble pas qu'il s'agisse d'un problème matériel (je crois que ce n'est pas le cas, mais je n'en suis pas sûr) ou peut-être que ce sont des paramètres de configuration d'affichage spéciaux qui provoquent le black-out ?
- Existe-t-il une autre méthode fiable pour retirer les informations importantes avant de procéder à des changements importants ?
Environnement :
- Dispositif : Samsung Galaxy S5
- Android : 5+, le firmware stock (Spr...), non re-flashed, rooté
Edit 1 :
Je viens de remarquer cette question : Sauvegarde en utilisant adb sur un téléphone avec un écran mort - il décrit pas exactement le même cas, puisque adb backup
ne peut pas fonctionner pour certaines applications + les recommandations dans ces questions ne fonctionnent pas pour moi, malheureusement.
Edit 2 :
L'application que je veux sauvegarder NE permet PAS la sauvegarde via le manifeste de l'application. Oh mince... J'ai perdu deux nuits pour le sortir en douceur, et seuls quelques outils de sauvegarde signalent que la sauvegarde de l'application n'est pas possible. C'est ridicule : certaines applications de données sensibles PERMETTENT de sauvegarder, y compris les messages, mais pas celle-ci. A quel point le journal de bord des pilules est-il sensible ? Hilarant. J'ai donc pris les fichiers SQLite de la base de données de l'application afin d'essayer de les restaurer manuellement. Je me fiche de savoir si ça réussit ou non, juste parce que android:allowBackup
. Pour ceux qui voudraient essayer d'activer une fonction aussi importante, voici quelques étapes très simples (mais qui prennent du temps) décrites dans le document suivant
- Android : Activer la sauvegarde ADB pour n'importe quelle application
- Android : comment décompiler et recompiler les APKs
- Instructions de construction/installation d'Apktool
C'est vraiment très simple de procéder avec toutes les instructions ci-dessus, mais j'ai quelques problèmes à ne pas être en mesure d'exécuter les tâches suivantes adb install -r ***
:
- L'application que j'essaie de supprimer utilise une autorisation contradictoire (
C2D_MESSAGE
ou plus, et il peut être facilement supprimé avant de construire un nouvel APK) - Cela ne fonctionnera probablement jamais, car j'ai essayé d'installer un APK signé avec une autre clé et j'obtiens des erreurs de certificat.
Ok, je suis d'accord pour prendre les fichiers SQLite, et je ne me soucie pas des préférences partagées. Cependant, je me demande s'il existe un moyen de réinitialiser les paramètres du pilote/adaptateur de l'écran du mode de fonctionnement de l'utilisateur afin de le réactiver et de faire en sorte que l'appareil n'inverse pas l'orientation portrait et paysage.
Edit 3 :
J'ai réussi à flasher une fois une restauration personnalisée, et puis j'ai redémarré. L'écran en orientation portrait est rendu comme s'il était en mode paysage, avec visuellement deux grandes barres noires au-dessus et en dessous de la scène rendue ! C'est "génial" :D Le fait de le flasher à nouveau l'a transformé en brique et je ne peux même plus accéder à la restauration. J'ai sauvegardé ce que je voulais. Maintenant je débloque.
Edit 4 :
Pas de débricolage - l'appareil s'est transformé en brique gelée au redémarrage. Le mode téléchargement est toujours disponible mais le flashage d'un firmware n'aide pas malheureusement. Pas de chance, mais je suis vraiment heureux d'avoir pu sauvegarder toutes les données importantes (et même celle qui n'est pas sauvegardée : J'ai pu enregistrer ( !) en touchant l'écran noir et en regardant des captures d'écran adb avec 1-2 fps :D -- maintenant mon profil d'application est dans le cloud). La fin.