Pourquoi le changement de signature de l'application dans Android après une classpath changer?

StackOverflow https://stackoverflow.com/questions/2458931

  •  20-09-2019
  •  | 
  •  

Question

J'ai un projet Android qui divisait en trois applications différentes, app-1, app-2 et app-3, qui appliquent certaines personnalisations. À l'heure actuelle, il y a beaucoup de duplication de code, ce qui rend l'entretien d'un cauchemar:. Faire les changements dans l'une des branches, puis fusionner les deux autres

Nous créons donc un projet de bibliothèque, du nom app-core, qui factorise la plupart du code dupliquée. Jusqu'à présent, si bon.

Quand je lance ceci dans un émulateur où l'application a déjà été chargé (avant le refactoring), je reçois cette exception:

Re-installation failed due to different application signatures

Une signature différente? Mais je viens d'ajouter une ligne dans le .classpath lier au projet app-core Java!

La principale question est: sont les utilisateurs existants va être dérangé par cela aussi

?

Et la question de côté: Pourquoi est-il une signature différente

Était-ce utile?

La solution

La signature numérique est entraîné par une clé de signature qui existe sur la machine qui signe l'application. Si le développeur A compile une application utilisant la clé de débogage standard et il installe dans un émulateur, puis tente d'installer une autre variante de l'application - celui signé avec une clé de production, celui signé avec la clé de débogage du développeur B, etc. - dans le même émulateur, vous obtiendrez cette erreur.

  

La principale question est: sont EXISTANT   les utilisateurs vont être dérangé par cette   aussi?

Avez-vous la clé de signature de la production que vous avez utilisé pour la version de l'application de vos utilisateurs existants utilisent? Si oui, alors il devrait y avoir aucun problème. Si non, vous êtes foutus.

Autres conseils

Désinstaller l'application sur le périphérique, puis exécutez à nouveau code, cela fonctionnera. Il arrive pour moi et j'ai essayé même chose, maintenant il fonctionne correctement.

Pour ce problème u besoin de vérifier que la clé correcte est utilisée sous (build Fenêtre-> Préférences-> Android->). Ce u peut vérifier à partir du fichier android.mk de l'application. Et placer le chemin de la clé correcte, propre et Générez le projet pour éviter cette erreur.

J'ai eu le genre de problème similaire. Si vous installez sur votre appareil, vous devez désinstaller l'application sur votre appareil avant de l'installer à partir éclipse. Il va certainement résoudre votre problème.

Vive

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top