Google Play
Google Play has no policy for superapps or mini apps. There is no Android equivalent of Apple’s Guideline 4.7 — no clause that names the category and authorises it.
That is the reverse of what most people assume, and it changes the architecture.
The interpreter exemption
Section titled “The interpreter exemption”Android’s legality runs through the Device and Network Abuse policy, which prohibits apps from downloading executable code but exempts:
…code that runs in a virtual machine or an interpreter where either provides indirect access to Android APIs (such as JavaScript in a webview or browser).
Every word there is load-bearing:
| Phrase | Consequence for Sollar |
|---|---|
| in a virtual machine or an interpreter | Mini apps are interpreted JavaScript. Never a native code loader, never a dynamically loaded .so or .dex. |
| indirect access to Android APIs | Every capability reaches Android through the Sollar bridge, mediated and checked. Never a direct binding. |
| such as JavaScript in a webview | The named example is exactly the architecture. That is not a coincidence; it is why the architecture is this. |
All executable code arrives inside the verified package. The CSP floor — script-src 'self',
no remote host, no 'unsafe-eval' — is what makes that true. A mini app pulling a script from a CDN
is downloading executable code from outside the verified package, which is precisely what the
exemption does not cover.
That is why the CSP floor is enforced by the submission validator rather than recommended in a style guide. It is a legal boundary wearing a security control’s clothes.
What has no Android equivalent
Section titled “What has no Android equivalent”What remains available on Android, and is what Sollar uses: the customer signs a contract with Sollar, is invoiced, and their employees use the product. No transaction happens in the app or is initiated from it.
Distribution routes
Section titled “Distribution routes”| Route | Verdict |
|---|---|
| Play Store, public listing | The route Sollar uses |
| Managed Google Play — private apps | Cannot charge anything, and cannot coexist with a public listing. Closed. |
| Sideloading / APK download | Not a product distribution channel |
| Alternative stores | Reach without the guarantees, and no help with the billing question |
Managed Google Play private apps deserve their line because they look like the answer to tenant-private distribution and are not: a private app cannot charge, and the exclusivity with a public listing means Sollar would have to choose one. Tenant-private mini apps are therefore provisioned inside the single publicly listed Sollar app, by tenant administrators — which is the design in Distribution anyway.
Data safety
Section titled “Data safety”Google Play requires a Data safety declaration covering what the app collects and shares — and it covers what mini apps collect through the host.
This is why the manifest’s purpose strings and the permission model matter beyond user experience:
Sollar’s Data safety form is assembled from what mini apps are permitted to do, so an over-declared
scope in your manifest becomes an over-declaration on a form Google reads.
A permission declared and never used is therefore not a harmless leftover. Remove it.
Target API level
Section titled “Target API level”Google Play requires a recent targetSdkVersion and raises it annually. This is Sollar’s obligation,
not yours, but it has one consequence you will feel: Sollar’s minSdk moves over time, and the
compatibility baseline moves with it — at most once a year, announced at
least two release cycles ahead.
WebView versions
Section titled “WebView versions”Android System WebView updates independently of the OS, through Play. In practice most devices run a recent build, but not all: managed devices with delayed update policies, devices in regions with limited Play services, and a long tail of old hardware run older WebViews.
The baseline is Android System WebView 114+. Below that, Sollar refuses to run mini apps rather than running them unpredictably — a mini app failing in a way its developer never saw is worse than one that does not start.
User Data policy
Section titled “User Data policy”Google’s User Data policy requires prominent disclosure and consent for sensitive data access, and it applies to what happens inside mini apps.
For you this means the permission prompt and the purpose string are not just Sollar’s mechanism —
they are how Sollar meets an obligation on Android. A purpose that does not describe what the app
actually does with the data is a policy problem, not only a review finding.
Checklist for Sollar’s own Play submission
Section titled “Checklist for Sollar’s own Play submission”- No mini app path loads native code. Everything is interpreted JavaScript with mediated access.
- The CSP floor is enforced by the validator; no mini app can load a remote script.
- No purchase flow of any kind inside the app, and no steering to one.
- The Data safety declaration matches the permission scopes mini apps can hold.
- Prominent disclosure and consent for every sensitive scope, at the point of use.
- The listing describes the mini app model plainly. An unexplained superapp invites the wrong policy reading, exactly as it does on iOS.