android-build-sign
Installation
SKILL.md
Automate this: /mobile-release:ship-beta runs this skill end to end and uploads the result;
/mobile-release:bootstrap creates the keystore, signingConfigs, and CI workflow from nothing.
Keystore creation is a gated step — see skills/release-automation for what an agent may do unattended.
Produce a signed, verified Android release artifact from a source tree. Stop at a verified artifact on disk — this skill does not upload to Play.
Process:
- Discover the project — wrapper, modules, variants, artifact paths — using Discover the project below.
- Set
versionCodeandversionNameusingreferences/versioning.md.versionCodemust be a strictly higher integer than every code already uploaded for this package, on any track. - Confirm an upload keystore exists. If it does not, create one using Create the upload keystore below, and keep it outside the repository.
- Wire
signingConfigsinto thereleasebuild type usingreferences/signing-configs.md— Kotlin DSL and Groovy, and the four ways to supply the credentials. - Confirm the target API level satisfies Target API level below before building.
- Build with
./gradlew bundleRelease, and collect the artifact, the R8 mapping file, and native debug symbols perreferences/build-outputs.md. - Verify the artifact with
references/verification.md—bundletoolfor an AAB,apksigner verify --print-certsfor an APK. Never report a build as done without a certificate fingerprint. - If Play App Signing is in play — first release, lost upload key, key rotation — read
references/play-app-signing.md. - To run this in CI, use the workflow in
references/github-actions.md. - On any failure, look the error up in
references/troubleshooting.mdbefore changing the build.