How do I publish my app to the App Store?
- Google Play
- iOS App Store
- Microsoft Store
- Progressive Web App
1
Configure Your App Metadata
Configure your app’s name, icon, and description in the Mobile tab. Ask Hercules AI to edit these details if needed.

2
Publish Your App on Hercules
Click “Publish” in the top right corner to get your App URL.

3
Generate Android Package with PWA Builder
- Go to pwabuilder.com
- Enter your app URL (e.g.
https://my-app.onhercules.appor your custom domain) - Click “Start”, then “Package for stores”
- Select “Android” and download the AAB file
4
Set Up Digital Asset Links
Google Play requires a Digital Asset Links file to verify your app owns your domain. Without it, your app opens with a browser address bar instead of running full screen. Credential sharing between your website and app will not work either.
- On the PWA Builder Android package screen, copy the
assetlinks.jsonsnippet it generates (it includes your package name and SHA256 fingerprint, a unique ID tied to your signing key) - Ask Hercules to add it to your app:
Add Digital Asset Links file
- Publish your app again so the file goes live
- Visit
https://my-app.onhercules.app/.well-known/assetlinks.json(or your custom domain). It should return the JSON you pasted, not your app’s page
If you regenerate your signing key or change your package name, update this file and publish again. If you enroll in Google Play App Signing (the default for new apps), Google re-signs your app with its own key: get the new fingerprint from Play Console → Setup → App integrity and update this file with it.
5
Submit to Google Play
- Go to Google Play Console
- You will need a Google Play Developer Account ($25 one-time)
- Click “Create app” and fill in details
- Go to Production → Create new release
- Upload the AAB file and complete store listing
- Submit for review (can take a few hours to 2 days)
FAQ
Why was my iOS app rejected?
Why was my iOS app rejected?
Common reasons: crashes/bugs, incomplete features, misleading descriptions, or being too similar to a website. Apple wants apps that provide value beyond what Safari offers. Add native features or unique functionality.
Why was my Android app rejected?
Why was my Android app rejected?
Common reasons: policy violations, inappropriate content, broken functionality, or missing privacy
policy. Google is generally more lenient with PWAs than Apple.
How long does review take?
How long does review take?
- Google Play: Usually hours to 2 days
- App Store: Usually 1-3 days
- Microsoft Store: Usually 1-3 days
Can I publish to multiple stores?
Can I publish to multiple stores?
Yes. Generate separate packages for each platform from PWA Builder. The underlying app is the
same, just packaged differently.
Why does my Android app show a browser address bar instead of running full screen?
Why does my Android app show a browser address bar instead of running full screen?
Your app’s Digital Asset Links file (
assetlinks.json) is missing, or does not match your signing
key. See the Set Up Digital Asset Links step under the Google Play tab above.Why do I need to save my Android signing key?
Why do I need to save my Android signing key?
You need your Android signing key to update your app on the Google Play store. You cannot update
your existing app on the Google Play store with a different signing key. You would need to publish
as a new app with a new package name, losing your existing users and reviews. We strongly
recommend saving your signing key somewhere safe.
Do PWAs work offline?
Do PWAs work offline?
PWAs can cache content for offline use. Ask Hercules to set up a service worker to cache assets
and handle offline scenarios gracefully.
Why PWA instead of app stores?
Why PWA instead of app stores?
PWAs are faster to ship (no review process), update instantly (no waiting for approval), work on all platforms, and don’t require developer accounts. PWAs are downloaded directly from the browser, as opposed to a store. You will have to create a PWA to create a mobile app anyway. We recommend testing with a PWA and then publishing to the app stores when you are ready.