API per caricare automaticamente apk su Google Play? [chiuso]


95

Esiste un'API o uno strumento che mi consente di caricare automaticamente un APK su Google Play? Desidero pubblicare automaticamente app personalizzate sul mio account senza passaggi manuali o interfaccia grafica.

Ho cercato in giro ma non sono riuscito a trovare alcuna API per farlo (solo Android-publisher ma non supporta la pubblicazione, nonostante il suo nome). Qualcuno ha già risolto questo problema, sembra una caratteristica di base?


3
Non credo che ce ne sia, ma questa è una domanda interessante
Stéphane

8
I tempi cambiano - lascia che il commento rifletta che ora ESISTE una tale API - i commenti e le risposte precedenti sono ormai obsoleti - la risposta corretta è ora di sharshi.
Richard Le Mesurier


Per coloro che sono arrivati ​​qui tramite una ricerca sul Web e desiderano solo una risposta, offtopica o meno: Fastlane è uno strumento che automatizza le distribuzioni di Play Store e App Store.
Thomas

Ce n'è
SD

Risposte:


63

Da oggi è disponibile una nuova API di pubblicazione ufficiale che ti consente di caricare su qualsiasi canale (es. Alpha, beta ...) o aggiornare titolo e descrizione e altro ancora.

Dai documenti:

  • Caricamento di nuove versioni di un'app Rilascio di app, assegnando APK a varie tracce (alpha, beta, implementazione graduale o produzione)
  • Creazione e modifica di elenchi di Google Play Store, inclusi
  • testo e grafica localizzati e screenshot multi-dispositivo

Cerca qui per maggiori informazioni: https://developers.google.com/android-publisher/


28
Tieni presente che l'API è solo per le app già pubblicate (che hanno almeno un APK caricato).
Léo Lam

L'autorizzazione con Google potrebbe essere un trucco. Ecco come apparirebbe ottenere il token tramite la riga di comando. PS La menzione della chiave .p12 non funzionerà finché non la converti in .pem con il comando "openssl pkcs12 -in my_google_key.p12 -out my_google_key.pem -nodes -clcert"
Vitalii

2
dai un'occhiata a questo plugin gradle - github.com/Triple-T/gradle-play-publisher
Sankar V

3
Qualcuno sa se la limitazione dell'aggiornamento delle sole app preesistenti è ancora valida?
Ricardo Pedroni

1
@Dokuzov si solo aggiornamenti
sharshi

22

gradle-play-publisher è un plug-in Gradle per caricare i dettagli dell'APK e delle app su Google Play Store.

Eseguo semplicemente ./gradlew publishApkReleasedal mio terminale e carica l'APK e il riepilogo delle modifiche recenti., Sono disponibili più attività come questa.

Utilizza l' API per sviluppatori di Google Play


Ciao, sono nuovo su Gradle, gradle-play-publisher dice "Una volta applicato questo plugin al progetto dell'applicazione Android, puoi configurarlo tramite il blocco di riproduzione", Dove devo aggiungere il blocco di riproduzione?
Aqib Mumtaz

Nella tua build.gradlecartella
Carlo Rodríguez

Potresti condividere il tuo file di build? Ricevo costantemente questa eccezione "org.gradle.execution.TaskSelectionException: Attività 'publishApkRelease' non trovata nel progetto radice"
Aqib Mumtaz


progetto non proprio attivo comunque
oldergod

20

Non esiste un'API Google ufficiale per automatizzare il lavoro con Google Play. (Questo NON è vero dopo luglio 2014)

Puoi creare uno script che incapsuli un browser web e simuli il comportamento dell'utente: trova i campi HTML, inserisci le informazioni lì, invia la pagina, ecc.

Stiamo lavorando a questo strumento Python open source: https://github.com/onepf/AppDF/tree/master/tools/uploader


6
Questo era vero fino alla fine di luglio 2014, quando Google ha aggiunto un'API di pubblicazione. Vedi la risposta di sharshi per maggiori informazioni.
Léo Lam

3
Questa risposta ora è sbagliata.
Richard Le Mesurier

4

Ho risposto anche a questa domanda , ma ho pensato di aggiungere lo stesso commento qui. Fammi sapere se è il modo sbagliato per farlo (duplicando le risposte).

Sono stato in grado di creare un plug-in gradle che esegue la pubblicazione su qualsiasi traccia desideri per qualsiasi gusto / variante desideri utilizzando le nuove API di pubblicazione di Google Play.

Vedi le fonti qui: https://github.com/bluesliverx/savillians-gradle

Sto lavorando per pubblicarlo su Maven Central in modo che possa essere utilizzato in uno script di build, ma per ora puoi prendere la android-publishersottodirectory nel repository, metterla nella radice della tua build gradle e rinominare la cartella in buildSrc. Usa la seguente riga nel build.gradlefile per il progetto Android che desideri pubblicare:

apply plugin: com.savillians.gradle.androidpublisher.AndroidPublisherPlugin

È quindi possibile configurare le impostazioni di pubblicazione utilizzando un androidPublisherblocco nel file build.gradle.

android {
    ...
}
androidPublisher {
    applicationName = "Company-Name-Product-Name/1.0"
    packageName = "<package name>"
    serviceAccountEmail = "<service account email>"
    serviceAccountKeyFile = file('<p12 keyfile - NOT the json file>')
    track = "alpha" // default, don't need to specify
    variantName = "release" // default, don't need to specify
}

Assicurati che l'account di servizio che crei abbia i permessi di "gestore di rilascio", scarica il file della chiave p12 e mettilo nella directory del progetto. Quindi esegui questo comando:

gradle androidPublish

Questo lo invierà a Google Play utilizzando le credenziali che hai specificato. Buona fortuna e fammi sapere se hai domande dato che è nuovo di zecca.


si prega di trovare stackoverflow.com/questions/29816342/... Does gradle androidPublishgenerare l'apk firmato e upload playstore
Nevin Raj Victor

Risposto. Questo plugin farà quello che stai cercando.
bksaville

ciao @bksaville è il supporto di questo plugin per le app esistenti. Non possiamo usarlo per le app appena create.
Sajith Vijesekara

Ho scoperto che invece di "gestore del rilascio" per i ruoli durante la creazione dell'account di servizio di cui avevo bisogno: nel menu a discesa Ruolo scegliere "Account di servizio" -> "Utente account di servizio" e "Creatore di token account di servizio"
Maks
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.