2015-01-10 14 views
5

io sono sempre un problema per cui Android Studio sta dicendoAndroid: Errore - App è lo stesso confezionato firma diversa

Installation failed since the device has an application with the same package but a different signature. . . .. 

Questo è corretto, come ho recentemente siglato un APK e caricato per la zona beta di mia sviluppatore gioco console.

E ora sto cercando di eseguire il debug in locale e per impostazione predefinita credo che tutti i progetti Android siano firmati dal keystore di debug, quindi le firme sarebbero diverse.

Qual è il modo migliore per affrontare questo? Sarebbe possibile firmare la mia versione di debug con la mia chiave di rilascio, e c'è un potenziale pericolo qui?

Come potrei forzare la firma della mia versione di debug con il mio keystore di rilascio senza perdere la possibilità di eseguire il debug, ecc.?

O dovrei semplicemente continuare a disinstallare e reinstallare le diverse versioni: questa sembra la peggiore soluzione possibile. :-)

risposta

16

Puoi firmare le tue app con il tuo codice di rilascio mantenendo l'opzione di debug - devi solo aggiungere la chiave di rilascio in Android Studio (o specificarla sulla riga di comando se stai firmando le tue app lì).

In Android Studio, fare clic con il tasto destro sulla propria app nel browser del progetto e aprire le impostazioni del modulo. Seleziona il modulo della tua app e fai clic su "Firma" per assicurarti che il tuo keystore di rilascio sia elencato. Quindi in "Tipi di build", assicurati che il target di debug e il target di rilascio condividano la stessa configurazione di firma e che la destinazione di debug sia impostata su true. Dovrebbero ora condividere la stessa chiave.

Ulteriori informazioni sulla firma delle app sono disponibili nella documentazione per gli sviluppatori here.

Non ho sentito parlare di un lato negativo di utilizzare la stessa chiave per il debug e per il rilascio, a condizione che la chiave privata sia mantenuta sicura (leggi: non sotto controllo di versione).

+0

Bello, ha funzionato. Grazie – Martin