Tutorial
From Lovable to Google Play: Build, Make It a PWA, Ship an Android App
August 14, 2026 · 10 min read
You can go from an idea to a signed Android app on Google Play without opening Android Studio. The path has three stages: build the product in Lovable, make that web app a real PWA, then convert the PWA into a signed APK and AAB with PWAtoApp.
Stage 1 — Build the product in Lovable
Lovable generates a full React web app from prompts, with a backend, database and auth available when you need them. Describe the product, iterate in the live preview, then publish so the app is served over HTTPS on a real domain.
- Describe the app clearly. Screens, data model and user flows first; polish the visuals afterwards.
- Add backend features if needed. Accounts, database tables and server logic all live inside the same project.
- Design mobile-first. The Android app renders exactly what your site renders, so test the narrow viewport as you build.
- Publish and connect a domain. Your own domain matters later: Digital Asset Links must be hosted on the same origin your app opens.
Stage 2 — Turn the Lovable app into a PWA
A published Lovable app is already a fast HTTPS website. To make it installable, it needs a web manifest, icons and — for offline behaviour and Play policy comfort — a service worker. Ask Lovable to add PWA support and it will wire the manifest and head tags for you.
What to ask for
- A
manifest.webmanifestwithname,short_name,start_url,display: "standalone",theme_colorandbackground_color. - Icons at 192×192 and 512×512, square PNG, plus a maskable variant so Android can crop it cleanly.
- An
apple-touch-iconand the manifest<link>in the head. - A service worker for offline support — only if you actually want the app to open without a connection.
Verify the result in Chrome DevTools: the Application tab should list your manifest without errors, and Lighthouse should report the app as installable.
Stage 3 — Convert the PWA into an Android app
PWAtoApp builds a Trusted Web Activity: your verified domain opens full screen inside the user's own Chrome engine. No duplicated codebase, no WebView hack, and typically under 1 MB.
- 1. Paste your published URL. We read the manifest, icons and service worker automatically.
- 2. Set app identity. App name (30 characters max on Play) and a permanent package name such as
com.yourcompany.app. - 3. Upload a 512×512 icon. Square PNG, no rounded corners.
- 4. Build. Keystore generation, compilation and signing run server-side.
- 5. Download. Signed APK for sideloading and alternative stores, signed AAB for Google Play, plus your certificate and
assetlinks.json.
Hosting assetlinks.json from a Lovable project
Drop the generated file at public/.well-known/assetlinks.json in your Lovable project and republish. It must return HTTP 200 as JSON over HTTPS on the exact host your app opens — www or non-www, matching your start_url, with no redirect. Once Chrome verifies it, the address bar disappears.
Which pieces live where
| Stage | Tool | Output |
|---|---|---|
| Build the product | Lovable | Published HTTPS web app on your domain |
| Make it installable | Lovable (manifest, icons, service worker) | A valid PWA |
| Ship to Android | PWAtoApp | Signed APK + AAB + certificate |
| Publish | Google Play Console | Live listing |
Updating after launch
Because the Android app loads your live Lovable site, every content and feature change you publish appears instantly — no store review. You only rebuild when the icon, splash screen, package configuration or version code changes, and each of those uploads must use the same signing certificate as the first.
Ready to ship your Android app?
Paste your PWA URL, get a signed APK and a Google Play ready AAB in minutes.
Build my app