2013-09-03 11 views
101

Mentre stava attraversando alcuni messaggi su Internet l'apprendimento di più su firmare la vostra applicazione Android, ho ottenuto post come come firmare l'applicazione, e qualcosa su cosa succede se avete perso il vostro file di archivio chiavi o la password.Non ho mai impostare tutte le password al mio chiavi e alias, così come vengono creati?

La domanda che sono qui per chiedere è che, non ho mai creato un keystore, o il suo alias, o la sua password, quindi come su questa terra posso dimenticarlo?

So che per Android usiamo la password android, quindi, se la password è di default Android come si può dimenticarlo? (Sono sicuro che ci deve essere un altro modo per creare nuovi keystore).

Infine, se Android è la password di default, ciò che è l'alias di default?

risposta

302

Firma in Debug modalità

Gli strumenti di generazione di Android forniscono una modalità di debug firma che rende più facile per voi per sviluppare ed eseguire il debug dell'applicazione, pur continuando a soddisfare la Requisiti di sistema Android per la firma del tuo APK. Quando si utilizza la modalità di debug per creare la propria app, gli strumenti SDK invocano Keytool per creare automaticamente un keystore e una chiave di debug. Questa chiave di debug viene poi utilizzato per accedere automaticamente l'APK, quindi non c'è bisogno di firmare il pacchetto con la propria chiave.

Gli strumenti SDK creare il debug di chiavi/chiave con i nomi prestabiliti/password:

Keystore name: "debug.keystore" 
Keystore password: "android" 
Key alias: "androiddebugkey" 
Key password: "android" 
CN: "CN=Android Debug,O=Android,C=US" 

Se necessario, è possibile modificare la posizione/nome della chiave di debug chiavi/o fornitura di un/chiave di debug personalizzati chiavi usare. Tuttavia, qualsiasi keystore/chiave di debug personalizzato deve utilizzare lo stesso keystore/nomi di chiavi e password come chiave di debug predefinita (come descritto sopra). (Per fare ciò in Eclipse/ADT, andare a Windows> Preferenze> Android> Costruire.)

Attenzione: non è possibile rilasciare l'applicazione per il pubblico quando ha firmato con il certificato di debug.

Fonte:Developer.Android

+0

Questo è stato molto istruttivo. Accettandolo come risposta. Un'altra domanda signore. Un solo keystore ha molte chiavi o il keystore e la chiave sono la stessa cosa? –

+0

Un keystore può avere molte chiavi e dovrai creare un diverso alias per le chiavi, penso che ora sia chiara la differenza tra la chiave e il keystore. Keystore è il contenitore di chiavi –

+0

l'ho usato per la firma di un apk non firmato, non ho potuto installare: jarsigner verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ~ ​​/ .android/debug.keystore my_unsigned.apk androiddebugkey Grazie –

3

quando si corre applicazione in Eclipse apk generare è segno di default Keystore che è fornito da Android.

Ma se si desidera caricare l'applicazione su Play Store è necessario creare il proprio archivio chiavi. Eclipse fornisce già un'interfaccia GUI per creare un nuovo keystore. E puoi anche creare il keystore tramite la riga di comando.

alias predefinito è

androiddebugkey 
+0

Grazie per la risposta, ma qualsiasi idea qual è la password per la chiave, poiché la password per il keystore era "android" (se non sbaglio) –

+0

@AnasAzeem vedere la mia risposta –

1

Tutte queste risposte e non v'è ancora solo uno mancante. Quando crei le tue credenziali di autenticazione nella sezione API di Google della console di sviluppo, assicurati (specialmente se è il tuo primo) che hai fatto clic sull'opzione "schermata di consenso". Se non si ha il 'titolo' e qualsiasi altro campo obbligatorio compilato la chiamata avrà esito negativo con questa opzione.

18

se si desidera configurare loro in Gradle dovrebbe assomigliare

signingConfigs { 
     debug { 
      storeFile file('PATH_TO_HOME/.android/debug.keystore') 
      storePassword 'android'     
      keyAlias 'AndroidDebugKey' 
      keyPassword 'android'      
     } 
     ... 
} 
1

Meglio di tutte le opzioni, è possibile impostare il signingConfig essere uguale vostro debug.signingConfig. Per fare questo è sufficiente effettuare le seguenti operazioni:

android { 
    ... 
    buildTypes { 
    ... 
    wantedBuildType { 
     signingConfig debug.signingConfig 
    } 
    } 
} 

Con che non avrete bisogno di sapere dove il debug.keystore è, l'applicazione funzionerà per tutta la squadra, anche se qualcuno usa un ambiente diverso.

+0

Eccellente! Questo è il modo conciso per rendere installabile un tipo di build debugProguard. – Jerry101

Problemi correlati