Play submission

Ruby Native uploads every Android build to the Internal Testing track. Internal testing skips Play review and needs almost nothing beyond a valid AAB, which makes it the right place to validate your app, but it is not the public Play Store.

To go live, you promote a build from internal testing to production yourself in Play Console. This mirrors how iOS works: Ruby Native delivers to TestFlight, and you do the App Store release in App Store Connect.

#Before you can go to production

Production has requirements internal testing doesn't. Play blocks a production release until each of these is done in Play Console.

#App content

In the left sidebar, open Policy and programs -> App content and complete every declaration:

  • Content rating. Fill out and submit the rating questionnaire. Answer honestly about your app's content. Submitting it generates the IARC age ratings Play shows on your listing. There's no API for this, so it has to be done by hand once.
  • Target audience and content. Declare the age groups your app is designed for.
  • Data safety. Declare what data your app collects, why, and whether it's shared. See data safety for a typical Rails app walkthrough.
  • Privacy policy. Add a privacy policy URL. Required for nearly every app, and your existing web privacy policy usually works.
  • Ads, government apps, financial features, health. Answer the remaining declarations. Most apps answer "no" to all of them.
  • App access. If anything in your app sits behind a login, provide demo credentials reviewers can reuse from any country, any number of times. If your login uses two-factor or one-time codes, the demo account must bypass them.

#Store listing

Open Grow -> Store presence -> Main store listing and fill out every field:

  • App title. Up to 30 characters. This is what users see on the Play Store.
  • Short description. Up to 80 characters. Appears at the top of your listing.
  • Full description. Up to 4,000 characters. Lead with what your app does.
  • Phone screenshots. At least 2, up to 8 allowed.
  • Feature graphic. 1024 by 500 pixels. Required for every listing.
  • App icon. 512 by 512 pixels. Play wants its own copy even though Ruby Native already uploads one with each build.
  • Category. Pick the one that best describes your app, under Store settings.

A few tips:

  • Lead with your best screenshot. The first image appears in Play Store search results.
  • There's no keyword field. The title, short description, and full description are all indexed for search, so work your main keywords in naturally. A handful of mentions helps; more reads as spam to both users and Google.
  • Watch the metadata policy. No emojis or ALL CAPS in the title, no "#1" or "best" claims, no price or promo text anywhere in the listing.
  • Don't mention Ruby Native or Rails in the description. Users care about what the app does for them, not how it's built.

Play Console shows a checklist on the Dashboard and on the App content page. Work through it until every item has a green check.

#New developer accounts need a closed test first

If your Play developer account is a personal account created on or after November 13, 2023, you can't promote straight to production. Google requires a closed test with at least 12 testers opted in continuously for 14 days before you can apply for production access.

Organization (business) developer accounts are not subject to this. With one of those, you can go straight to production once the checklist above is done.

To run the closed test, promote a Ruby Native build to a closed testing track the same way you'd promote to production, choosing Closed testing instead of Production. Add your testers, leave it running for the full 14 days, then apply for production access from the Play Console Dashboard.

#Promote a build to production

Once a Ruby Native build has landed on internal testing and you've cleared the checklist above:

  1. In Play Console, open Testing -> Internal testing.
  2. Find the release you want to ship and click Promote release -> Production.
  3. Review the release. The AAB, version code, and release notes carry over from internal testing, so you can edit the release notes if you want and leave the rest.
  4. Set the rollout percentage. A staged rollout, say 20 percent, lets you pause if something goes wrong, while 100 percent ships to everyone at once.
  5. Click Next, then Save and publish, or Send for review if this is your first production release.

You can also create a fresh production release from Production -> Create new release and add the same AAB, but promoting the internal build is fewer steps. Google's prepare and roll out a release guide covers the full release form.

#Play review

Google reviews every production release. A brand new app usually takes a few days, while updates to an app that's already live usually clear in a few hours. Turn on managed publishing in Play Console so an approved release waits for you to press the button instead of going live mid-review. Internal testing builds skip review entirely, which is why you can keep shipping to testers while a production release is in review.

Most rejections trace back to the App content declarations: a missing privacy policy, an incomplete data safety form, or a content rating that doesn't match what the app actually does.

#Future builds

After your first production release, every new Ruby Native build still lands on internal testing. Promote it to production the same way whenever you're ready, and returning releases clear review much faster than the first one.

Need help with your submission?

Turnkey includes hands-on help with your listing, declarations, and going live.

View pricing