./gradlew build
./gradlew installRelease
In order to sign the APK, you will want to create a 'gradle.properties' file. The content should look like the following except it should contain your key signing information:
StoreFile=<path to file>
StorePassword=<password>
KeyAlias=<key alias>
KeyPassword=<password>
GoogleAPIKey=<optional: your Google Maps API key>
MozAPIKey=test
To obtain a free Google API key:
- Create an account on https://cloud.google.com/console.
- Browse to the APIs & auth > APIs menu.
- Enable the API name "Google Maps Android API v2". You do not need any of the other Google Maps API keys.
- TODO: add instructions for registering your app certificate with Google's API console.*
To generate a signing key, search the internet for details. This command is probably what you want:
keytool -genkey -v -keystore my-release-key.keystore -alias mozstumbler -keyalg RSA -keysize 2048 -validity 10000
To verify the apk has been signed, you can run this command:
jarsigner -verify -verbose -certs build/apk/MozStumbler*
This release process ought to be automated.
MOZSTUMBLER_VERSION=x.y.z
git checkout -b v$MOZSTUMBLER_VERSION
echo $MOZSTUMBLER_VERSION > VERSION
- Increment
android:versionCode
andandroid:versionName
in the AndroidManifest.xml.in file. git commit -m "MozStumbler v$MOZSTUMBLER_VERSION" AndroidManifest.xml.in VERSION
- Push the new version branch to GitHub and file a new pull requests so Travis can start building it.
./gradlew build
mv build/apk/MozStumbler-release.apk build/apk/MozStumbler-$MOZSTUMBLER_VERSION.apk
- Browse to https://github.com/dougt/MozStumbler/releases.
- "Draft a new release" with the release title "MozStumbler v$MOZSTUMBLER_VERSION" and tag version "v$MOZSTUMBLER_VERSION".
- Add some release notes and give @credit to contributors!
- Drag and drop the new MozStumbler-v$MOZSTUMBLER_VERSION.apk to the "Attach binaries for this release by dropping them here." box.
- Check "This is a pre-release" because perpetual beta.
- Save draft. Do not "Publish release" yet because master does not have the new VERSION file!
- Merge the new version pull request. NB: There is a race condition between steps 13 and 14! It is mostly harmless, but be quick about it.
- Now go back to the draft release and Publish release.
- Email a release announcment to the dev-geolocation mailing list with release notes giving @credit to contributors and a link to the release's page https://github.com/dougt/MozStumbler/releases/tag/v$MOZSTUMBLER_VERSION.
- Good work!