Put your game on the Google Play Store.
Part 2. In Part 1 you built a game and put it online. Now it becomes a real Android app people install from Play. Six prompts, a few clicks in Play Console, and my free plugin handles the traps.
Three things only you can do.
Claude can't pay Google or prove who you are. Do these once.
- 01
Finish Part 1
Your game should already be online, with a live link, and saved on GitHub.
- 02
Get a Play developer account
At play.google.com/console. There is a one-time registration fee, and Google checks your identity.
- 03
Have an Android phone
You will install the game from Play on it to test before anyone else sees it.
Copy, paste, click Allow.
Paste them one at a time, in order. Prompt 06 waits until after your first upload.
Make the game installable
Open your game's folder in VS Code and paste this. A Play Store app needs your game to be a PWA: a web app with a name, icons and offline support. Swap in your own game's name.
Make Mosquito Wahala installable as an app (a PWA), so it can go on the Google Play Store. - Add a web app manifest: name "Mosquito Wahala", short name "Mosquito", display standalone, portrait, the game's own colours, start_url "/". - Make the app icons yourself with code, from the game's look: 192x192, 512x512, and a 512x512 maskable one. No outside services. - Add a service worker so the game still opens offline after the first visit. - Test it in a hidden browser: the manifest loads, the icons show, and Chrome sees it as installable. Fix anything you find. - Then put it online on Vercel and give me the live link and the link to the manifest. Don't change how the game plays.
Install the pwa2play plugin
pwa2play is a free plugin I made after losing a weekend to the problems it now steers you past. Plugin commands don't work in the VS Code chat, so let Claude install it from the terminal. Then reload VS Code (Ctrl+Shift+P, Reload Window).
Install my Claude Code plugin for me. Plugin commands don't work in this chat, so use the terminal: 1. If the "claude" command isn't available in the terminal, install the Claude Code command line tool with npm (npm install -g @anthropic-ai/claude-code). 2. Run: claude plugin marketplace add degordonstech/pwa2play 3. Run: claude plugin install pwa2play@degordons 4. If it says a package is missing, run npm install inside the pwa2play plugin folder. 5. Show me that the plugin is installed, then tell me to reload VS Code.
Build the Android app
Type this in a new Claude chat. It asks for your game's live link, then builds and signs the app. Choose your app ID carefully, like com.yourname.yourgame: it can never change once uploaded. Keep the two passwords it asks for somewhere safe.
/pwa2play:package
Check what you built
Read the facts out of the built file instead of trusting what the build printed, before anything goes to Google.
Run the pwa2play check on the built apk and tell me the app ID, version code and target Android version. Confirm the target is the one Google currently requires.
Back up the signing key
The most important step. Every update to your app must be signed with this same key. Lose it and you can never update the app again.
Copy my signing keystore and twa-manifest.json to a backup folder outside this project, and tell me where you put them. Make sure the keystore and the built app files are in .gitignore so they never go to GitHub. Remind me which passwords I need to keep.
Make it open full screen
Do this after your first upload (the steps are below). Without it, your app opens with a browser address bar across the top. Paste your own fingerprint and app ID.
This is my app signing key SHA-256 from Play Console: PASTE_IT_HERE Add the Digital Asset Links file at /.well-known/assetlinks.json for the app ID com.yourname.yourgame with this fingerprint. Make sure Vercel serves it as JSON with status 200, not the game page. Deploy it, then check the live link returns the file.
The part you click yourself.
After prompt 05, upload the app. Then come back for prompt 06.
- 01
Create the app
In Play Console: All apps, then Create app. Give it your game's name, choose Game and Free, and accept the declarations.
- 02
Upload to internal testing
Test and release, then Testing, then Internal testing. Create a new release, upload app-release-bundle.aab, and start the rollout. Play lists anything else it needs first.
- 03
Add yourself as a tester
In the Testers tab, add an email list with your own email, then copy the join link.
- 04
Copy the fingerprint
Test and release, then App integrity. Copy the SHA-256 under App signing key certificate. It only exists after your first upload. Use it in prompt 06.
- 05
Install it from Play
Open the join link on your phone and install. Once prompt 06 is live, the game opens full screen with no browser bar.
- 06
Go public
Personal accounts need 12 testers opted in for 14 days in a row before applying for production. Organization accounts skip this.
What gets apps rejected.
The plugin warns you about each of these before you hit it. Here they are in one place.
- One key, forever.
- Every update must be signed with the key you made the first time. A different key is rejected, with no way around it.
- The app ID is permanent.
- Once uploaded, it can never change for that app. Pick it before you build.
- A browser bar means assetlinks.
- If the app opens with an address bar, the fingerprint in assetlinks.json is wrong or missing. It must be the app signing key from Play, not the one the build printed.
- Updates need a higher version code.
- Use /pwa2play:update for every new release. It keeps the same key and raises the version code for you.
- Windows hiccups are normal.
- On Windows, the build tool sometimes can't find its helper programs. Let Claude work around it, and say yes when it asks.
More guides like this
Bots, websites and tools, each built with AI and free tools, with the prompts I used.