5 votes

"Il y a un problème interne avec votre appareil, et il pourrait être instable jusqu'à ce que vous réinitialisiez les données d'usine."

Au démarrage, je reçois le message :

Il y a un problème interne avec votre appareil, et il pourrait être instable jusqu'à ce que vous réinitialisiez les données d'usine.

Je n'ai pas de fermetures forcées ou d'instabilité.

Quelles sont les circonstances qui provoquent cette erreur et existe-t-il un terminal magique qui permet d'éviter une réinitialisation d'usine ?

S'il s'agit d'un problème avec un /system/build.prop inadéquation Comment puis-je trouver les incompatibilités spécifiques afin de les restaurer ?

J'utilise Dirty Unicorns sur un Moto Pure/Play, mais j'ai vu cela sur d'autres ROMs et matériels.

0 votes

0 votes

Effacer /cache peut aussi aider. technobill dit Le message d'erreur que vous voyez au démarrage est dû à une désynchronisation des fichiers système.

0 votes

Le nettoyage du cache n'a pas aidé

7voto

Tom Points 186

Vous avez bien deviné. Il s'agit d'une discordance entre l'empreinte de construction mentionnée dans le fichier build.prop de la partition système et le fichier build.prop de l'image du fournisseur, plus précisément l'élément ro.vendor.build.fingerprint clé.

Pour autant que je sache, cela se produit lorsque la partition du fournisseur et la partition du système ont été construites séparément à partir de différentes constructions ou versions.

Il existe plusieurs solutions à ce problème. Je vais en préciser deux que j'ai personnellement essayées et qui ont permis de se débarrasser de ce message d'erreur gênant.

Correction du temps d'exécution

Le premier correctif est en cours d'exécution et nécessite un accès Root sur adb. Nous allons monter les images et faire correspondre la valeur de l'empreinte digitale en la copiant d'une partition à l'autre.

  • Racine adb
  • mount -o rw,remount -t ext4 /system
  • adb remount
  • adb pull /vendor/build.prop ./build.prop.vendor
  • adb pull /system/build.prop ./build.prop.system
  • copier la valeur de build.prop.system à build.prop.vendor pour ro.vendor.build.fingerprint
  • adb push ./build.prop.vendor /vendor/build.prop
  • adb reboot

Correction en temps de compilation

La deuxième solution me plaît davantage car elle supprime complètement le contrôle du code. Si vous construisez votre propre version d'Android, ou du moins si vous la compilez vous-même, vous pouvez simplement modifier le code et désactiver cette fonctionnalité.

Le code qui vérifie l'empreinte digitale et soulève éventuellement cette erreur se trouve dans

/frameworks/base/core/java/android/os/Build.java .

Recherchez la méthode suivante :

public static boolean isBuildConsistent()

Il suffit de commenter tout le code qu'il contient et de le remplacer par

return true;

Ainsi, votre construction sera toujours "cohérente" et aucun problème d'empreinte digitale ne sera jamais soulevé.

1 votes

0 votes

La troisième solution, mentionnée par @xdevs23, consiste à faire correspondre les empreintes digitales :)

0 votes

Exactement, j'ai choisi cet engagement et je n'ai plus jamais eu ce message.

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