Questa guida è rivolta agli sviluppatori che hanno già un'applicazione nel Play Store. Se stai iniziando con una nuova app il processo è molto più semplice e puoi seguire le linee guida del paragrafo "Nuove app" da qui
Prerequisiti che il 99% degli sviluppatori possiede già :
Android Studio
JDK 8 e dopo l'installazione è necessario impostare una variabile di ambiente nello spazio utente per semplificare i comandi del terminale. In Windows x64 è necessario aggiungere questo: C:\Program Files\Java\{JDK_VERSION}\bin
alla Path
variabile d'ambiente. (Se non sai come fare puoi leggere la mia guida per aggiungere una cartella alla Path
variabile d'ambiente di Windows 10 ).
Passaggio 0 : apri la console per sviluppatori di Google Play, quindi vai a Gestione delle versioni -> Firma dell'app .
Accetta i TOS di firma dell'app.
Passaggio 1 : scarica lo strumento PEPK facendo clic sul pulsante identico all'immagine sottostante
Passaggio 2 : apri un terminale e digita:
java -jar PATH_TO_PEPK --keystore = PATH_TO_KEYSTORE --alias = ALIAS_YOU_USE_TO_SIGN_APK --output = PATH_TO_OUTPUT_FILE --encryptionkey = GOOGLE_ENCRYPTION_KEY
Leggenda:
- PATH_TO_PEPK = Il percorso del pepk.jar che hai scaricato nel passaggio 1 , potrebbe essere qualcosa di simile
C:\Users\YourName\Downloads\pepk.jar
per gli utenti Windows.
- PATH_TO_KEYSTORE = Percorso al keystore che utilizzi per firmare l'APK di rilascio. Potrebbe essere un file di tipo * .keystore o * .jks o senza estensione. Qualcosa di simile
C:\Android\mykeystore
o C:\Android\mykeystore.keystore
ecc ...
- ALIAS_YOU_USE_TO_SIGN_APK = Il nome dell'alias che utilizzi per firmare l'APK di rilascio.
- PATH_TO_OUTPUT_FILE = Il percorso del file di output con estensione .pem, qualcosa di simile
C:\Android\private_key.pem
- GOOGLE_ENCRYPTION_KEY = Questa chiave di crittografia dovrebbe essere sempre la stessa. Puoi trovarlo nella pagina Firma dell'app, copiarlo e incollarlo. Dovrebbe essere in questa forma:
eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a
Esempio:
java -jar "C: \ Users \ YourName \ Downloads \ pepk.jar" --keystore = "C: \ Android \ mykeystore" --alias = myalias --output = "C: \ Android \ private_key.pem" - encryptionKey = eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a
Premi Invio e dovrai fornire in ordine:
- La password del keystore
- La password alias
Se tutto è andato bene, ora avrai un file nella cartella PATH_TO_OUTPUT_FILE chiamato private_key.pem
.
Passaggio 3 : carica il file private_key.pem facendo clic sul pulsante identico all'immagine sottostante
Passaggio 4 : crea un nuovo file keystore utilizzando Android Studio.
AVRAI BISOGNO DI QUESTO KEYSTORE IN FUTURO PER FIRMARE LE PROSSIME VERSIONI DELLA TUA APP, NON DIMENTICARE LE PASSWORD
Apri uno dei tuoi progetti Android (scegline uno a caso). Vai a Build -> Genera APK firmato e premi Crea nuovo .
Ora dovresti riempire i campi richiesti.
Il percorso del keystore rappresenta il nuovo keystore che creerai, scegli una cartella e un nome utilizzando l'icona dei 3 puntini sulla destra, ho scelto C:\Android\upload_key.jks
(l'estensione .jks verrà aggiunta automaticamente)
NOTA: ho usato upload
come nuovo nome alias, ma se in precedenza hai utilizzato lo stesso keystore con diversi alias per firmare app diverse, dovresti scegliere lo stesso nome alias che avevi in precedenza nel keystore originale.
Premi OK quando hai finito e ora avrai un nuovo upload_key.jks
keystore. Puoi chiudere Android Studio ora.
Passaggio 5 : è necessario estrarre il certificato di caricamento dal upload_key.jks
keystore appena creato . Apri un terminale e digita:
keytool -export -rfc -keystore UPLOAD_KEYSTORE_PATH -alias UPLOAD_KEYSTORE_ALIAS -file PATH_TO_OUTPUT_FILE
Leggenda:
- UPLOAD_KEYSTORE_PATH = Il percorso del keystore di caricamento appena creato. In questo caso è stato
C:\Android\upload_key.jks
.
- UPLOAD_KEYSTORE_ALIAS = Il nuovo alias associato al keystore di caricamento. In questo caso è stato
upload
.
- PATH_TO_OUTPUT_FILE = Il percorso del file di output con estensione .pem. Qualcosa di simile a
C:\Android\upload_key_public_certificate.pem
.
Esempio:
keytool -export -rfc -keystore "C: \ Android \ upload_key.jks" -alias upload -file "C: \ Android \ upload_key_public_certificate.pem"
Premi Invio e dovrai fornire la password del keystore.
Ora se tutto è andato bene, avrai un file nella cartella PATH_TO_OUTPUT_FILE chiamato upload_key_public_certificate.pem
.
Passaggio 6 : carica il upload_key_public_certificate.pem
file facendo clic sul pulsante identico all'immagine sottostante
Passaggio 7 : fare clic sul pulsante REGISTRA alla fine della pagina Firma dell'app.
Ora ogni nuova versione dell'APK deve essere firmata con il upload_key.jks
keystore e gli alias creati nel passaggio 4 , prima di essere caricata nella Console per gli sviluppatori di Google Play.
Altre risorse:
Q & A
D: Quando carico l'APK firmato con il nuovo keystore upload_key, Google Play mostra un errore del tipo: Hai caricato un APK non firmato. Devi creare un APK firmato .
R: Seleziona per firmare l'APK con entrambe le firme (V1 e V2) durante la creazione dell'APK di rilascio. Leggi qui per maggiori dettagli.
AGGIORNATO
Il passaggio 4,5,6 consiste nel creare la chiave di caricamento che è facoltativa per le app esistenti
"Chiave di caricamento (facoltativa per le app esistenti): una nuova chiave generata durante la registrazione al programma. Utilizzerai la chiave di caricamento per firmare tutti i futuri APK prima di caricarli nella Play Console."
https://support.google.com/googleplay/android-developer/answer/7384423