Italian Aiuto per pubblicare la prima App su PlayStore

CyclopDroid

Well-Known Member
Licensed User
Longtime User
Come da titolo, ho letto un po in giro ma c'ho capito poco o quasi nulla! :p
Ecco quello che ho fatto su B4A:

1) Messo nel Project Attributes la versione1:
B4X:
    #VersionCode: 1
    #VersionName: 1.00
2) Caricata, in Tools, la mia chiave progetto (copiando la stessa che ho nel mio account google PlayStore, all'interno di un file .Keystore)
3) Vado a caricare la mia App sul PlayStore e mi dice:
Caricamento non riuscito
Hai caricato un APK che è stato firmato in modalità di debug. Devi firmare l'APK in modalità di pubblicazione. Leggi ulteriori informazioni sulla firma.
:eek:

Io ho caricato il file presente dentro la cartella del mio progetto (dati\Objets) dopo averla eseguita in Relase.

Dove sbaglio?
Che passaggi mi mancano? :confused:
 

CyclopDroid

Well-Known Member
Licensed User
Longtime User
Ed io da li ho caricato il file .keystore (la chiave RSA google nel mio account playstore).
Ho messa la password sempre del PlayStore, ma continua a darmi quell'errore.
Su B4A ho anche fatto Project\Compile e Run... ma niente :(
Ho letto la richiesta che fece ivanomonti...ma on trovo nulla che non ho fatto! :(
 
Last edited:

CyclopDroid

Well-Known Member
Licensed User
Longtime User
Ecco risolto il mistero ma sempre bloccato. :(
Quando ho compilato la Private Sign Key, l'ho fatto in "Use Debug Key"... ed ecco che a Google non va bene.
Se clicco però su OK, mi appare il seguente errore:
https://www.dropbox.com/s/t1x4hvr5if0dnwn/errore.jpg
Ora. il fatto è che io non ho creato una Sign key (ma forse sbaglio) ma aggiunta la mia App sul mio Play Store (senza il file .apk) dove trovo qesto codice che ho messo all'interno del file .keystore
 

IlCasti

Active Member
Licensed User
Longtime User
Ciao
La chiave privata in Private Sign Key serve solo per compilare il progetto per lo store e creare il certificato dell'app che dovrà essere lo stesso per la medesima, altrimenti tutte le volte che farai un update della tua app la dovrai sostituire del tutto e non esisterà l'update dal market in automatico verso gli utenti che già l'hanno installata.
Quindi scegli un Nome (Erosmax), un'organizzazione (se non la vuoi mettere basta un *), country (IT) e sulla textbox File scegli il percorso dove salvare il keystore (C:\NOMEAPP.keystore) e te la salvi per bene anche su dropbox per non perdertela mai più (perchè potresti averne diverse, una per ogni app che fai).
La chiave che ti sei preso dal PlayStore serve solo per la libreria Licensing e la crea quando crei una nuova app, perchè ognuna ha la sua.
Se per caso hai gia fatto una scheda, eliminala e ricreala.
Prendi la chiave base64, mettila nel tuo Licensing al posto della vecchia, assicurati che la tua private key sia a posto e compila in Release mode, scegli tu se offuscarla oppure no.
Dopo di che procedi all'upload sul Play e completa tutte le schede con immagini e descrizioni. Scegli i paesi e i dispositivi etc etc
Questa è forse la parte più pallosa perchè ci sono un sacco di check da passare.
Se tutto va bene ti si abiliterà il tasto Pubblica App.
A quel punto prima di trovarla nel market passeranno alcune ore.

Ciao
IlCasti
 

CyclopDroid

Well-Known Member
Licensed User
Longtime User
Grazie per la delucidazione.
Quindi, ogni prima volta, dovrò crearla ex-novo la Sign Key per ogni App. :rolleyes:
Ma cosa cambia fra Release e Release (obfuscate)?:confused:
Come funziona la libreria Licensing? Alla creazione non l'ha messa. Ma seve veramente?
 

IlCasti

Active Member
Licensed User
Longtime User
La Licensing Library serve per proteggere l'app in modo tale che finisca solo sul play store e che non venga dirottata sul altri market
La release obfuscate camuffa alcune variabili della tua app per non farla hackerare troppo facilmente (detto a parole povere)

Ciao
IlCasti
 

CyclopDroid

Well-Known Member
Licensed User
Longtime User
Mi sta facendo male la testa :confused:
Ho messo una foto per il Tablet 7" e mi dice che la mia applicazione non è progettata per i tablet :confused:
Vado a caricare un icona... e la vuole 512x512x32bitAlpha ma, una volta fatta, mi dice che deve essere meno di 1MB (la mia è 1.03MB) ma, anche se la lascio tutta trasparente, sempre 1.03MB occupa!!! :mad:
Mamma mia che OO
 

CyclopDroid

Well-Known Member
Licensed User
Longtime User
Fiuuu! che faticaccia :oops:
Avevi ragione tu. IlCasti, è stato abbastanza incasinato la sezione autorizzazioni etc :p
Prima APP Pubblicata! :D
 

CyclopDroid

Well-Known Member
Licensed User
Longtime User
No potendo essere installato sui Tablet (causa invio SMS), ho dovuto inserire nel Manifest:
B4X:
AddManifestText(<uses-feature android:name="android.hardware.telephony" android:required="false" />)
Chi ha avuto l'errore, mi ha detto che ora funiona (scaricato da DropBox per testare).
Ora vorrei ripubblicarlo ma, quando vado ad inserire l'APK google mi dice che evo cambiare la versione.

Io, negli attributi di proggetto, ho modificato il #VersionName da 1.00 a 1.01 ma a google non fa nessun effetto.... devo cambiare il #VersionCode? Oppure cosa? :confused:
 

CyclopDroid

Well-Known Member
Licensed User
Longtime User
Grazie, volevo essere sicuro prima. ;)
Ma, visto che il #VersionCode non si possono mettere i punti (quindi 1, 2, 3, etc), quello che verrà visualizzato agli utenti è solo il #VersionName, giusto?
 

IlCasti

Active Member
Licensed User
Longtime User
Il VersionName viene visualizzato come stringa nel dettaglio app
Il VersionCode viene utilizzato per le app in update (quindi sempre crescente)
 

CyclopDroid

Well-Known Member
Licensed User
Longtime User
OK, l'aggiornamento è riuscito, soltanto che non capisco perché coloro che lo hanno installato dal Play Store (solo mia moglie :() non gli viene aggiornato automaticamente, oppure gli viene detto che c'è una nuova versione :confused:
Se però, va nello store, trova "Aggiorna" invece di "Scarica".
C'è un modo per avvisare tramite App del nuovo aggiornamento disponibbile ed inviare alla paggina PlayStore?

Poi, un'altra cosa.

Si può pubblicizzare la propria App (tipo sui social), mettendo il link che porta al PlayStore?
 
Top