In TIL #14, I called getting an Android app into the Play Store “byzantine.” Turns out, I was being too generous to Google and too strict on the ancient kingdom of Byzantium.
Here’s what really gave me headaches over the last few months:
🤕 Headache #1: The forms
Before Google even looks at your app, you’re drowning in bureaucracy: ticking the “my app doesn’t process health data” box 12 times, pasting links to T&Cs and privacy policies, verifying your name, intentions, identity, blood type, shoe size, the maiden name of your mom’s dog, …
🤕 Headache #2: The test users
To move from “Closed Testing” to production, 12 real people (with unique Google accounts + devices) must install your app for 14 consecutive days. For an independent dev, that means pestering friends, family, and anyone with an Android phone. Corporate teams? Equally awkward, I imagine, having to bet employees to use personal Google accounts for testing.
🤕 Headache #3: Updates during testing
Think you can quickly ship updates in closed testing? Nope. Every build needs:
👉A new version code (see TIL #47)
👉Signing + uploading to the Google Play Developer Console – the second most clumsy UI I’ve ever seen (only surpassed by Google Ads)
👉 Several hours of waiting for Google’s blessing
🤕 Headache #4: Login instructions
Once you finally apply for production, reviewers reject any app requiring login unless you provide credentials. For poketto.me, login = email + verification code. Easy, right? It sais so right there on the login page. Nope. Google wants username + password and instructions on where to put them. I ended up hard-coding a backdoor user for Google with a fixed verification code. But, according to my logs, they never even used that account.
🤕 Headache #5: Appeals
Resubmit? File a support ticket? Wait a week? Sometimes Google closes tickets automatically because “the app is still under review.” On another page, it sais that developers located in the European Union have access to “additional means of appeal,” whatever that means. Turns out: Waiting int out is often your only option.
🤕 Headache #6: Cross-blocking
While one version is “under review” for production, you can’t update the version in closed testing, change the store listing, update your app icon, or, really, do anything.
🥲 The only consolation?
Once in production, minor updates now pass review in hours. Small mercy.