119 lines
5.9 KiB
Markdown
119 lines
5.9 KiB
Markdown
# Google Play store presence runbook
|
|
|
|
This runbook records the exact local inputs and the observed Console gaps. It
|
|
does not authorize saving fields in Play Console or publishing a release.
|
|
|
|
## Observed Console state on 2026-08-13
|
|
|
|
- App type is **App**.
|
|
- App category was subsequently saved as **Social**.
|
|
- Tags are not selected.
|
|
- Store-listing contact email, phone, and website are empty.
|
|
- The default English listing has no saved short description, full
|
|
description, app icon, feature graphic, or phone screenshots.
|
|
- The Dashboard initially showed 9 of 11 setup tasks complete. Category was
|
|
saved afterward; public contact details and Store-listing completion still
|
|
require a current Console recheck.
|
|
- Closed testing was still locked pending those setup tasks and reported zero
|
|
opted-in testers.
|
|
- After this initial observation, the foreground-service declaration was saved
|
|
with **User-initiated location sharing** and the unlisted demonstration URL
|
|
`https://youtube.com/shorts/UZh_QBdlbBc`. Recheck the current Console state
|
|
before any later release; this runbook does not treat a saved form as Google
|
|
approval.
|
|
|
|
These are direct observations from the authenticated Play Console session on
|
|
that date. Recheck the Console before applying because its fields and policy
|
|
requirements can change.
|
|
|
|
## Prepared local inputs
|
|
|
|
- English listing: `android/play-store/store-listing-en-US.md`
|
|
- Ukrainian listing: `android/play-store/store-listing-uk-UA.md`
|
|
- Russian listing: `android/play-store/store-listing-ru-RU.md`
|
|
- Icon: `android/store-assets/icon-512.png`
|
|
- Feature graphic: `android/store-assets/feature-graphic-1024x500.png`
|
|
- Phone screenshots: `android/store-assets/screenshots/phone/`
|
|
- Screenshot alt text: `android/store-assets/README.md`
|
|
|
|
Run `./scripts/android-store-assets-validate.sh` immediately before upload.
|
|
The validator checks image dimensions/formats and listing-length constraints;
|
|
it does not prove Play policy approval or visual quality.
|
|
|
|
The validator passed again on 2026-08-10, and a fresh combined visual review
|
|
confirmed that the approved icon, feature graphic, and four phone screenshots
|
|
contain no visible email, private message, handover code, or real precise
|
|
location.
|
|
|
|
## Contact fields
|
|
|
|
- Public support email candidate: `contact@whoneedhelp.com`
|
|
- Website: `https://whoneedhelp.com/`
|
|
- Public phone: leave empty unless the operator deliberately chooses a number
|
|
that can be published and monitored.
|
|
|
|
Do not save the email merely because it is used as an outbound sender. First
|
|
send a real inbound message to it, observe arrival in the monitored mailbox,
|
|
and verify that replies are handled. Google recommends keeping the public app
|
|
support address distinct from the developer-account sign-in address.
|
|
|
|
A repeated read-only public DNS check on 2026-08-13 returned no MX record for
|
|
either `whoneedhelp.com` or `contact.whoneedhelp.com`. Production is configured
|
|
to send through Brevo as `contact@whoneedhelp.com`, while internal support
|
|
alerts route to the operator's monitored mailbox. These are outbound and
|
|
internal-routing facts; neither proves inbound delivery to the public address.
|
|
The address remains a candidate, not a verified support inbox. Before Console
|
|
entry, either configure and test a monitored inbound mailbox/forwarder for that
|
|
address or deliberately use a different already monitored public support
|
|
address.
|
|
|
|
## Category and child-safety gate
|
|
|
|
The prepared listing suggests **Social**, which accurately describes the
|
|
community and participant features. Google Play's current Child Safety
|
|
Standards policy applies to every app that declares itself as Social, including
|
|
adult-only apps. Before saving that category or self-certifying:
|
|
|
|
1. Deploy and open the globally accessible `/child-safety` standards.
|
|
2. Verify the in-app and public report paths for child-safety content.
|
|
3. Select a monitored child-safety point of contact who can access the urgent
|
|
restricted queue and act on reports.
|
|
4. Test inbound delivery to the selected contact.
|
|
5. Confirm the launch-jurisdiction escalation and authority-reporting process.
|
|
6. Record the evidence and only then complete Play's self-certification.
|
|
|
|
Do not choose a less accurate category merely to avoid a policy declaration.
|
|
Do not claim cross-jurisdiction legal compliance from the presence of a page,
|
|
queue, or automated test.
|
|
|
|
On 2026-08-10 a repeated public check observed HTTP `200` from
|
|
`https://whoneedhelp.com/child-safety` on production revision `dafcdb36`. The
|
|
frozen hackathon test was not changed and still returns `404`. This clears the
|
|
public-page deployment check only; it does not prove that the monitored
|
|
child-safety contact or jurisdiction-specific escalation process is ready.
|
|
|
|
## Suggested apply order after explicit permission
|
|
|
|
1. Recheck the current Console fields and policy warnings read-only.
|
|
2. Verify the production policy/support URLs and monitored email.
|
|
3. Host the verified foreground-location demonstration as an unlisted video,
|
|
then complete and save the mandatory foreground-service declaration. Reopen
|
|
**App content** and verify that the permission alert is cleared before
|
|
changing Store Presence. Google documents that an unresolved permissions
|
|
declaration for an active bundle can block publishing changes, including
|
|
store-listing changes.
|
|
4. Save category, tags, contact email, and website.
|
|
5. Create the default English (United States) listing with prepared text,
|
|
images, and alt text.
|
|
6. Add Ukrainian and Russian localizations from their prepared files.
|
|
7. Reopen the Dashboard and verify both setup tasks are marked complete.
|
|
8. Recheck App content; do not start Closed or Production rollout as part of
|
|
store-presence setup.
|
|
|
|
Official references rechecked on 2026-08-10:
|
|
|
|
- https://support.google.com/googleplay/android-developer/answer/9859454
|
|
- https://support.google.com/googleplay/android-developer/answer/14747720
|
|
- https://support.google.com/googleplay/android-developer/answer/9878809
|
|
- https://support.google.com/googleplay/android-developer/answer/9214102
|