Italian Come firmare app e creare App Bundle per inviare su Play Store di Google?

luke2012

Well-Known Member
Licensed User
Longtime User
Mio caso: App Bundle: OK | New keystore: KO

Ciao ragazzi.
Io sono nel caso nuova app fresca fresca su nuovo account play store fresco fresco.

La compilazione dell'app bundle con B4A 11.00 (jdk1.8.0_212) tutto ok (ovvero la procedura termina senza errori).

Visto che la mia è una nuova app con una nuova pubblicazione su un nuovo account, sicuramente (da quanto ho capito) sono nel caso "creazione nuova keystore". Ed è qui che sto un pochino imprecando.
Vedi post... https://www.b4x.com/android/forum/t...erating-a-new-keystore-for-app-bundle.135773/

Mi sfugge qualcosa? Sto facendo qualcosa di sbagliato ? Devo aggiornare anche il JDK ? Devo formattare tutto e reinstallare il sistema operativo (scherzo ovviamente) ? ?
 
Last edited:

luke2012

Well-Known Member
Licensed User
Longtime User
Ho verificato:
una nuova release di una vecchia app l'ho compilata con la chiave di debug (quindi senza indicazioni di nulla) e l'ho compilata (non ho usato la "Build App Bundle" ma solo "Compila" ovviamente in modalità "Release").
Sul Play Store ho implementato una nuova release (versione successiva) e ho uploadato il file APK.
Tutto accettato ed inserito.

Stessa procedura, ovviamente, non è possibile per nuove app di cui richiede AAB con una chiave privata generata da "Private Sign Key".

Ciao Aldo. Ma nel tuo caso parli di un'app pre-esistente precedente al discorso AAB, giusto ?

P.S.
Premetto che non ho ancora approfondito molto ma perchè diavolo Google dopo eoni di .apk e di .keystore ha deciso di cambiare tutto (e rompere i maron glassè worldwide) ? E' una misura di prevenzione contro il virus della famosa pandemia (scherzo ovviamente) ? ?

P.S. 2
"Stessa procedura, ovviamente, non è possibile per nuove app di cui richiede AAB con una chiave privata generata da "Private Sign Key"."
Non avevo letto le ultime due righe. Ora sò la risposta al tuo post :)
 

Aldo's

Active Member
Licensed User
Ciao ragazzi.
Io sono nel caso nuova app fresca fresca su nuovo account play store fresco fresco.

La compilazione dell'app bundle con B4A 11.00 (jdk1.8.0_212) tutto ok (ovvero la procedura termina senza errori).

Visto che la mia è una nuova app con una nuova pubblicazione su un nuovo account, sicuramente (da quanto ho capito) sono nel caso "creazione nuova keystore". Ed è qui che sto un pochino imprecando.
Vedi post... https://www.b4x.com/android/forum/t...erating-a-new-keystore-for-app-bundle.135773/

Mi sfugge qualcosa? Sto facendo qualcosa di sbagliato ? Devo aggiornare anche il JDK ? Devo formattare tutto e reinstallare il sistema operativo (scherzo ovviamente) ? ?
jdk e sdk io ho dovuto aggiornarli, poi ho creato la key da B4A senza problemi...
...ma prima ho trovato fatica pure io.
Ti consiglio di aggiornare jdk e android sdk e poi crea la chiave. Quando tutto è pronto carica la chiave e crea il tuo file AAB.
 

Aldo's

Active Member
Licensed User
Ciao Aldo. Ma nel tuo caso parli di un'app pre-esistente precedente al discorso AAB, giusto ?

P.S.
Premetto che non ho ancora approfondito molto ma perchè diavolo Google dopo eoni di .apk e di .keystore ha deciso di cambiare tutto (e rompere i maron glassè worldwide) ? E' una misura di prevenzione contro il virus della famosa pandemia (scherzo ovviamente) ? ?
Ho provato sia un caso che l'altro.
Per vecchie app APK con chiave di debug e tutto funziona
Per nuove app AAB con chiave privata e tutto funziona
 

luke2012

Well-Known Member
Licensed User
Longtime User
Non esiste la "chiave di debug". Immagino che tu intenda con la chiave di default che, se fosse quella fornita con B4A, non andrebbe usata per pubblicare l'app sullo store (sarebbe uguale per tutti gli utenti B4A).

Hai usato una chiave che hai creato in passato.

Ciao Luca.
La chiave di debug esiste ;)
Concordo con te (in linea con le indicazioni di Erel) che non andrebbe usata per distribuire (pubblicare) app.
 

LucaMs

Expert
Licensed User
Longtime User
Vedi post...

"keytool error: java.io.FileNotFoundException: <keystore_file_name> (Access is denied)
1 - Hai forse qualche problema di diritti sulla directory (vedi "Access is denied")?
2 - mi sembra molto strano che Erel non abbia messo un Like a quel tutorial; ergo mi domando se sia davvero necessaria tutta quella procedura.
 

luke2012

Well-Known Member
Licensed User
Longtime User
1 - Hai forse qualche problema di diritti sulla directory (vedi "Access is denied")?
2 - mi sembra molto strano che Erel non abbia messo un Like a quel tutorial; ergo mi domando se sia davvero necessaria tutta quella procedura.

E dovrei verificare. Ma prima proverei come suggerisce (giustamente) @Aldo's così posso usare la comoda GUI di B4A :)
 

luke2012

Well-Known Member
Licensed User
Longtime User
jdk e sdk io ho dovuto aggiornarli, poi ho creato la key da B4A senza problemi...
...ma prima ho trovato fatica pure io.
Ti consiglio di aggiornare jdk e android sdk e poi crea la chiave. Quando tutto è pronto carica la chiave e crea il tuo file AAB.

Ok grazie del consiglio (immaginavo), me lo hai confermato :)
Aggiorno e provo.

P.S.
Tra l'altro avevo già creato il .keystore prima di scoprire questa novità. Quello immagino che posso buttarlo nel ces.. cestino anche perchè ho provato ad usare quella chiave e il Create App Bundle mi ha fatto una pernacchia.
 

luke2012

Well-Known Member
Licensed User
Longtime User
jdk e sdk io ho dovuto aggiornarli, poi ho creato la key da B4A senza problemi...
...ma prima ho trovato fatica pure io.
Ti consiglio di aggiornare jdk e android sdk e poi crea la chiave. Quando tutto è pronto carica la chiave e crea il tuo file AAB.
Allo ho...

1) Aggiornato JDK all'ultima versione disponibile JDK 17.0.1
2) Aggiornato SDK installando (solo) i pacchetti che mi propone (preselezionati) l'SKD Manager di B4A
3) Aggiornato B4A all'ultima versione disponibile 11.00

Faccio una prima prova di compilazione e mi si inchioda subito con un errore java:

"Compiling generated Java code. Error
error: Source option 6 is no longer supported. Use 7 or later.
javac 17.0.1"

Allora sono tornato alla versione JDK che funziona correttamente ovvero la jdk1.8.0_212.

Quindi faccio Tools / Private Sign Key / Create new key e quando imposto il nome del file "File:" con il "Save as" mi trovo un'estensione .keystore ? (rido per non piangere).

Mi sto chiedendo quale dei 3 punti sopra sto sbagliando.

Scusa @Aldo's ma tu che versioni hai di JDK, SDK, minSdkVersion, targetSdkVersion ?

Grazie 1000 per l'aiuto e pazienza (ma sono ore che ci sbatto la testa su questo diavolo di nuovo keystore) :)



Schermata 2021-11-06 alle 19.26.08.png
 

Attachments

  • Schermata 2021-11-06 alle 19.14.03.png
    Schermata 2021-11-06 alle 19.14.03.png
    34.5 KB · Views: 156
  • Schermata 2021-11-06 alle 19.15.07.png
    Schermata 2021-11-06 alle 19.15.07.png
    60.4 KB · Views: 162

Star-Dust

Expert
Licensed User
Longtime User
Quindi era come avevo capito Io all'inizio che non bisogna fare nulla?
 

luke2012

Well-Known Member
Licensed User
Longtime User
Quindi era come avevo capito Io all'inizio che non bisogna fare nulla?

Se per "fare nulla" intendi (nel mio caso nuova app):

1) Aggiornare SDK e B4A IDE
2) Generare una nuova chiave di firma (keystore)
2) Inserire le relative istruzioni #if AAB nel main

La risposta è si.
 

luke2012

Well-Known Member
Licensed User
Longtime User
Ecco che sono al momento topico.
Premetto che è un pò di tempo che non carico app sullo store.
Sto caricando il mio primo AAB su Play Store ed ecco i primo errore (figuriamoci se andava tutto liscio):

"L'icona all'interno dell'APK o dell'Android App Bundle non è valida."

Dal tipo di errore non sembra centri nulla col discorso AAB (almeno penso).

1) Immagino intenda l'icona dell'app che si vede sul launcher
2) Grazie che mi hai detto che non è valida. Ma il perchè (risoluzione, proporzione, formato....) ?

Lancio il dado ?

P.S.
Non sò se è capitato anche ad @Aldo's e @amorosik
 
Last edited:

Star-Dust

Expert
Licensed User
Longtime User
Questo post mi fa capire
Se per "fare nulla" intendi (nel mio caso nuova app):

1) Aggiornare SDK e B4A IDE
2) Generare una nuova chiave di firma (keystore)
2) Inserire le relative istruzioni #if AAB nel main

La risposta è si.
Io ho aggiornato SDK mano mano che ho installato le nuove versioni. Ho rifatto sempre tutto d'accapo

Ora leggendo questo post capisco che se hai B4A 10.7 + non è necessario fare tutto il lavoro che hai fatto tu:

Mi sbaglio?
 

Aldo's

Active Member
Licensed User
Ecco che sono al momento topico.
Premetto che è un pò di tempo che non carico app sullo store.
Sto caricando il mio primo AAB su Play Store ed ecco i primo errore (figuriamoci se andava tutto liscio):

"L'icona all'interno dell'APK o dell'Android App Bundle non è valida."

Dal tipo di errore non sembra centri nulla col discorso AAB (almeno penso).

1) Immagino intenda l'icona dell'app che si vede sul launcher
2) Grazie che mi hai detto che non è valida. Ma il perchè (risoluzione, proporzione, formato....) ?

Lancio il dado ?

P.S.
Non sò se è capitato anche ad @Aldo's e @amorosik
No, nessun problema.
Ho inserito l'icona dell'app in "Progetto"->"Scegli icona" e non ho avuto nessun problema.
 
Top