Skip to content

Publish to Google Play on every merge - #25

Merged
asulwer merged 1 commit into
masterfrom
google-play
Nov 13, 2026
Merged

asulwer merged 1 commit into
masterfrom
google-play

Conversation

@asulwer

@asulwer asulwer commented Nov 13, 2026

Copy link
Copy Markdown
Owner

Closes #24

Every merge to master now goes to Google Play as well as to GitHub Releases. Both come from a single build, so they have the same version.

Changes

  • CallGuard.csproj: -p:ForPlay=true builds an App Bundle (.aab, the only format Play accepts) next to the .apk. Local builds are unchanged.
  • release.yml:
    • Builds with ForPlay and keeps the .aab in the workflow artifact next to the .apk.
    • Uploads it with r0adkll/upload-google-play@v1, the same action GroceryList uses.
    • Settings, all set in the repo, not in code:
      • secret PLAY_SERVICE_ACCOUNT_JSON
      • variable PLAY_TRACK (internal / alpha = Closed testing / beta / production)
      • optional variable PLAY_RELEASE_STATUS (completed by default, or draft)
    • The Play steps are skipped until PLAY_TRACK is set. Merging this PR changes nothing until the Play Console side is ready.
    • "What's new" on Play is the merged PR's title.
    • The Play upload runs after the GitHub release, so a Play problem never holds up the GitHub release.
  • docs/privacy.md: a privacy policy page, required by Play for apps that read contacts. It will be at https://asulwer.github.io/CallGuard/privacy.html and is linked from How it works.

Checked locally

  • A ForPlay Release publish produces a signed .aab and .apk, both versionName 1.0.261113 and the same versionCode.
  • Target SDK 36, arm64 only.
  • All 118 native libraries use 16 KB page alignment, which Play requires for API 35+ targets.

🤖 Generated with Claude Code

The release workflow now also builds an App Bundle (-p:ForPlay=true makes
the same build produce both the .apk and the .aab) and uploads it to the
Play track named by the PLAY_TRACK repository variable, with the merged
PR's title as "What's new". Until PLAY_TRACK is set the upload is skipped
and the bundle is only kept as a workflow artifact.

Adds a privacy policy page to the docs site, which Play requires for an
app that reads contacts.

Closes #24

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@asulwer
asulwer merged commit 1de47bb into master Nov 13, 2026
3 checks passed
@asulwer
asulwer deleted the google-play branch November 13, 2026 23:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Publish to Google Play on every merge

1 participant