/java-play-store-uploader

Simplest tool to upload android builds to play store.

Primary LanguageJavaMIT LicenseMIT

Build Status Open issues Pull requests GitHub issues

Play Store Uploader

This is a simple tool to upload android apk builds to play store. Suitable for automation of play store uploads in a CI system.

Requirements

  1. Java (JRE) 8 or above

Install

  1. Download the latest zip or tar archive from Releases Section.
  2. Unpack archive contents to any location.
  3. Execute the binaries in bin directory. On unix use PlayStoreUploader, while on windows use PlayStoreUploader.bat.

Usage

1. Setup Play Store

Ensure that the app is created on Play Store. Setup Play Store listing and other required information so that release management is enabled and new releases can be published. It is advised to do a manual upload and release at least once in the beginning.

2. Setup Release Tracks

Play Store allows to upload apps on release tracks like alpha, beta and production. Enable and setup the track you want to use, on Play Store console.

3. Get Service Account Key

To access Play Store API a JSON key file is needed. On Play Store, goto API Access section and configure a service account with Play Store API access. Download and save the JSON credentials of this account.

4. Build apk file

Build signed production android apk file to upload. In case of a CI server, this file should be already generated.

4. Run Upload Command

Execute the binary, passing required data in arguments.

PlayStoreUploader -key "key.json" -apk "app.apk" -track "alpha" -name "myApp" -notes "new release"

CLI Options

Running without any arguments will print available argument options.

Options:
 -apk VAL       : The apk file to upload
 -key VAL       : JSON key file of authorized service account
 -name VAL      : (optional) App name on Play Store (defaults to name in apk)
 -notes VAL     : (optional) Release notes
 -notesFile VAL : (optional) Release notes from file
 -track VAL     : Release track to use. Eg. alpha, beta, production etc

Development

To build:

./gradlew clean assemble

To run:

./gradlew run --args "...arguments"

Pull requests and suggestions are welcome.