
When you submit to the App Store, major China Android markets, or mini-program review, auditors rarely start with your roadmap. They check whether a privacy policy is reachable, whether it explains personal information and purposes, and whether users can accept terms of service. Indie teams often stall here—not because the product is unfinished, but because nobody owns a hostable compliance draft.
China’s Personal Information Protection Law (PIPL) and common store listing rules reward clarity, not length. You need to state what you collect, why, with whom you share it, and how users exercise rights. Missing one of those is a fast bounce; in worse cases, a takedown.
This guide is for overseas and domestic teams entering China stores. It complements permission-screenshot and Android privacy checklists elsewhere on the site; here the job is to produce a first HTML draft you can publish on HTTPS.
| Document | Questions it answers | Typical listing use |
|---|---|---|
| Privacy policy | Data types, purposes, retention, SDKs, user rights | Store privacy fields, permission “learn more”, filing packs |
| User / terms of service | Accounts, acceptable use, liability, disputes | Sign-up checkbox, subscriptions, complaint handling |
You can publish both on one page with anchors, but the privacy URL you paste into consoles must open without login and without a file:// path.
For how privacy claims should match screenshots and permission UI, see the site’s store screenshot privacy/permission compliance and China Android privacy review checklist. Keep this article focused on the policy text and hosting workflow.
AppShot Maker’s privacy policy / user agreement generator is built around China listing fields: choose document type → fill app and entity → tick permissions and preset SDKs (or add custom rows) → copy Markdown/HTML or download HTML. Generation stays in the browser; the form contents are not uploaded to this site’s servers, which is useful before you have formal counsel.
Suggested sequence:
Info.plist / AndroidManifest (and runtime permission prompts) against the form—do not tick the full template./privacy, /terms).Treat output as a draft. Finance, health, kids, and heavy location products need legal review. A complete template still cannot invent your real data flows.
| Step | Common failure | Safer pattern |
|---|---|---|
| URL | HTTP, login wall, 404, redirect to a store listing | Long-lived HTTPS static page |
| Version sync | New SDK shipped, policy still old | Add “policy diff” to every release checklist |
| Permission copy | Dialog says A, policy says B | One phrase per scenario everywhere |
| Screenshots | Settings page with no path to the policy | Show About → Privacy opening the live URL |
When review only wants proof that users can open the policy in-app, the path must be reproducible. The authoritative text remains the clickable web page.
If you already ship a GDPR-style privacy page, do not paste it unchanged into China consoles:
None of this replaces counsel; it prevents the most frequent “please resubmit with a proper policy” loops.
You do not need a CMS. A static file on any HTTPS host is enough if:
After each material SDK change, bump a visible “last updated” date on the page so your team—and auditors—can see freshness.
For China store listing, privacy policy and terms are hard gates, not footer decoration. Inventory real permissions and SDKs, generate a hostable HTML draft locally, then align URLs, dialog copy, and screenshots. Escalate regulated categories to counsel—use the generator to save a week of blank-page time, not to certify final compliance.