I’m a big fan of continuous integration / deployment and we build our Android apps with Jenkins and deploy every build from specific branches (mostly git flow‘s develop branch) to our testers via HockeyApp.
What I want to achieve is that every new (tagged) commit to master will endup in the Play Store. So I don’t have to manually upload APKs via the Play Store developer console. I’ve already searched for an API. But Google doesn’t provide any and the two unofficial projects I found (Android Market API and Play PHP API) only support downloading metrics like the download count of your app.
So can someone think of a way to upload APKs via cURL or a small script?
Google releases a new API for automatic deploy to Alpha/Beta and Production channels!
take a look here
- Uploading new versions of an app Releasing apps, by assigning APKs to
various Tracks (alpha, beta, staged rollout, or production)
- Creating and modifying Google Play Store listings, including localized text
and graphics and multi-device screenshots
Some java samples about how to use the API: samples
I found and I’m using a gradle plugin that use this API, its called gradle-play-publisher. It is very easy to use, you need only to get a Service account and download a p12 file with a certificate (PlayStore –> Settings –> API access >> “Create Service Account” >> choose p12 format and read instruction in plugin website!
You’ll have a hard time performing the oAuth authentication with curl to get access to the dashboard. I think in all honesty the quickest route to a solution here would be to create a AHK script which performs the upload through a browser where you are prelogged in.
As long as Google doesn’t provide an API, you will end up with a hack. Might as well go with the hack that is quickest to implement.