287 lines
7.7 KiB
Markdown
287 lines
7.7 KiB
Markdown
# Google Play Store Pre-Upload Checklist
|
|
|
|
Use this checklist before uploading to Google Play Store to ensure everything is ready.
|
|
|
|
---
|
|
|
|
## 📋 Phase 1: Assets & Content
|
|
|
|
### Icons
|
|
- [x] ✅ PNG icons generated (72, 96, 128, 144, 152, 192, 384, 512)
|
|
- [x] ✅ Maskable icon created (512x512 with safe zone)
|
|
- [x] ✅ Adaptive icon layers (foreground + background)
|
|
- [x] ✅ Icons added to manifest
|
|
|
|
**Location:** `pwa/public/icons/`
|
|
|
|
### Screenshots
|
|
- [ ] ⏳ Captured minimum 2 screenshots (recommended 4-8)
|
|
- [ ] ⏳ Screenshots are 1080x2340 (portrait)
|
|
- [ ] ⏳ Screenshots show actual app content
|
|
- [ ] ⏳ Screenshots saved as PNG
|
|
- [ ] ⏳ Screenshots named `screenshot-1.png`, `screenshot-2.png`, etc.
|
|
|
|
**Location:** `pwa/public/screenshots/`
|
|
**Guide:** See `pwa/public/screenshots/README.md`
|
|
|
|
### Feature Graphic
|
|
- [x] ✅ Created 1024x500 banner
|
|
- [x] ✅ No transparency (solid background)
|
|
- [x] ✅ Saved as PNG
|
|
|
|
**Location:** `pwa/public/assets/feature-graphic.png`
|
|
|
|
### Privacy Policy
|
|
- [x] ✅ Privacy policy written
|
|
- [x] ✅ Route added to PWA (`/privacy-policy`)
|
|
- [x] ✅ Accessible at `https://app.placebo.mk/privacy-policy`
|
|
- [x] ✅ Covers data collection (PostHog, cache, etc.)
|
|
- [x] ✅ GDPR compliant
|
|
|
|
**URL:** https://app.placebo.mk/privacy-policy
|
|
|
|
---
|
|
|
|
## 🔧 Phase 2: Technical Setup
|
|
|
|
### PWA Configuration
|
|
- [x] ✅ Manifest updated with PNG icons
|
|
- [x] ✅ Categories added (`news`, `entertainment`)
|
|
- [x] ✅ Orientation set to `portrait-primary`
|
|
- [x] ✅ Theme colors configured
|
|
- [x] ✅ Service worker working
|
|
- [x] ✅ Offline functionality tested
|
|
|
|
**File:** `pwa/vite.config.ts`
|
|
|
|
### Digital Asset Links
|
|
- [x] ✅ `assetlinks.json` template created
|
|
- [ ] ⏳ SHA256 fingerprint updated (after PWABuilder)
|
|
- [x] ✅ Nginx configured to serve `.well-known/`
|
|
- [ ] ⏳ File accessible at `https://app.placebo.mk/.well-known/assetlinks.json`
|
|
- [ ] ⏳ Validated with Google's tool
|
|
|
|
**File:** `pwa/public/.well-known/assetlinks.json`
|
|
**Validator:** https://digitalassetlinks.googleapis.com/v1/statements:list?source.web.site=https://app.placebo.mk
|
|
|
|
### Build & Deployment
|
|
- [x] ✅ TypeScript check passes
|
|
- [x] ✅ ESLint passes
|
|
- [x] ✅ Production build successful
|
|
- [ ] ⏳ Updated PWA deployed to `https://app.placebo.mk`
|
|
- [ ] ⏳ PWA accessible and working
|
|
|
|
**Commands:**
|
|
```bash
|
|
cd pwa
|
|
npm run type-check
|
|
npm run lint
|
|
npm run build
|
|
# Deploy to Coolify
|
|
```
|
|
|
|
---
|
|
|
|
## 📱 Phase 3: Android App Generation
|
|
|
|
### PWABuilder Setup
|
|
- [ ] ⏳ PWA URL entered: `https://app.placebo.mk`
|
|
- [ ] ⏳ PWA score checked (should be high)
|
|
- [ ] ⏳ Package configured:
|
|
- App name: `Placebo.mk`
|
|
- Package ID: `mk.placebo.app`
|
|
- Launch URL: `https://app.placebo.mk/`
|
|
- Theme color: `#000000`
|
|
- Background: `#ffffff`
|
|
- Orientation: `portrait`
|
|
|
|
### Signing Key
|
|
- [ ] ⏳ Signing method chosen (Cloud or Own)
|
|
- [ ] ⏳ Signing key generated
|
|
- [ ] ⏳ SHA256 fingerprint copied
|
|
- [ ] ⏳ Signing details saved securely
|
|
|
|
⚠️ **IMPORTANT:** Keep signing key details secure! You'll need them for updates.
|
|
|
|
### App Package
|
|
- [ ] ⏳ AAB file downloaded
|
|
- [ ] ⏳ Test APK downloaded (optional)
|
|
- [ ] ⏳ SHA256 fingerprint added to `assetlinks.json`
|
|
- [ ] ⏳ Updated PWA redeployed
|
|
|
|
---
|
|
|
|
## 🧪 Phase 4: Testing (Optional but Recommended)
|
|
|
|
### Local Testing
|
|
- [ ] ⏳ APK installed on device
|
|
- [ ] ⏳ App opens without browser UI (TWA verified)
|
|
- [ ] ⏳ Navigation works correctly
|
|
- [ ] ⏳ Offline mode works
|
|
- [ ] ⏳ Analytics (PostHog) fires
|
|
- [ ] ⏳ No crashes or errors
|
|
|
|
### PWA Testing
|
|
- [ ] ⏳ Manifest validates: https://manifest-validator.appspot.com/
|
|
- [ ] ⏳ Service worker registers
|
|
- [ ] ⏳ Icons display correctly
|
|
- [ ] ⏳ Privacy policy loads
|
|
- [ ] ⏳ All routes work
|
|
|
|
---
|
|
|
|
## 🏪 Phase 5: Google Play Console Setup
|
|
|
|
### Account & App
|
|
- [x] ✅ Google Play Developer account active
|
|
- [ ] ⏳ App created in Play Console
|
|
- [ ] ⏳ App name set: `Placebo.mk`
|
|
- [ ] ⏳ Default language: Macedonian (mk-MK)
|
|
- [ ] ⏳ Free app selected
|
|
|
|
### Store Listing
|
|
- [ ] ⏳ Short description written (max 80 chars)
|
|
- [ ] ⏳ Full description written (max 4000 chars)
|
|
- [ ] ⏳ Screenshots uploaded (2-8 images)
|
|
- [ ] ⏳ Feature graphic uploaded
|
|
- [ ] ⏳ App icon uploaded (512x512)
|
|
- [ ] ⏳ Category selected: News & Magazines
|
|
- [ ] ⏳ Contact email: `privacy@placebo.mk`
|
|
- [ ] ⏳ Website: `https://placebo.mk`
|
|
- [ ] ⏳ Privacy policy URL: `https://app.placebo.mk/privacy-policy`
|
|
|
|
### Content Rating
|
|
- [ ] ⏳ Content rating questionnaire completed
|
|
- [ ] ⏳ Category: News & Reference
|
|
- [ ] ⏳ Questions answered honestly
|
|
- [ ] ⏳ Ratings applied
|
|
|
|
### Target Audience
|
|
- [ ] ⏳ Target age selected (13+ or 18+)
|
|
- [ ] ⏳ Ads declaration completed
|
|
- [ ] ⏳ Target audience declaration submitted
|
|
|
|
### Countries & Pricing
|
|
- [ ] ⏳ Countries selected (North Macedonia + others)
|
|
- [ ] ⏳ Pricing set to Free
|
|
- [ ] ⏳ Distribution settings confirmed
|
|
|
|
### App Release
|
|
- [ ] ⏳ AAB file uploaded
|
|
- [ ] ⏳ Upload processed successfully
|
|
- [ ] ⏳ Supported devices shown
|
|
- [ ] ⏳ Release notes added (Macedonian + English)
|
|
- [ ] ⏳ Release reviewed
|
|
|
|
---
|
|
|
|
## ✅ Final Checks Before Submission
|
|
|
|
### Critical Items
|
|
- [ ] ⏳ All Play Console sections marked complete (green checkmarks)
|
|
- [ ] ⏳ No errors or warnings in Play Console
|
|
- [ ] ⏳ Privacy policy accessible
|
|
- [ ] ⏳ Digital Asset Links verified
|
|
- [ ] ⏳ PWA live at `https://app.placebo.mk`
|
|
- [ ] ⏳ Screenshots captured and uploaded
|
|
- [ ] ⏳ Feature graphic uploaded
|
|
- [ ] ⏳ Content rating assigned
|
|
- [ ] ⏳ AAB uploaded successfully
|
|
|
|
### Nice to Have
|
|
- [ ] ⏳ Test APK installed and working
|
|
- [ ] ⏳ App preview video (optional)
|
|
- [ ] ⏳ Promo graphics (optional)
|
|
- [ ] ⏳ Social media announcement prepared
|
|
- [ ] ⏳ Website updated with app link
|
|
|
|
---
|
|
|
|
## 🚀 Submission
|
|
|
|
When all items above are complete:
|
|
|
|
1. [ ] ⏳ Click "Review release" in Play Console
|
|
2. [ ] ⏳ Fix any issues highlighted
|
|
3. [ ] ⏳ Click "Start rollout to Production"
|
|
4. [ ] ⏳ Confirm submission
|
|
5. [ ] ⏳ Wait for Google's review (1-7 days)
|
|
|
|
---
|
|
|
|
## 📊 Post-Submission
|
|
|
|
After submitting:
|
|
|
|
- [ ] ⏳ Monitor Play Console for review status
|
|
- [ ] ⏳ Check email for Google notifications
|
|
- [ ] ⏳ Prepare announcement content
|
|
- [ ] ⏳ Set up monitoring for crashes/errors
|
|
|
|
When approved:
|
|
|
|
- [ ] ⏳ Announce on social media
|
|
- [ ] ⏳ Update website with Play Store badge
|
|
- [ ] ⏳ Email users about app availability
|
|
- [ ] ⏳ Monitor reviews and respond
|
|
- [ ] ⏳ Track analytics and downloads
|
|
|
|
---
|
|
|
|
## 🆘 If Something Goes Wrong
|
|
|
|
### Common Issues:
|
|
|
|
**Upload fails:**
|
|
- Check AAB file size (max 150MB)
|
|
- Verify signing key
|
|
- Try uploading again
|
|
|
|
**TWA doesn't work:**
|
|
- Verify SHA256 fingerprint
|
|
- Check assetlinks.json URL
|
|
- Wait 5-10 minutes for cache
|
|
|
|
**App rejected:**
|
|
- Read rejection reason carefully
|
|
- Fix issues
|
|
- Resubmit
|
|
|
|
**Privacy policy error:**
|
|
- Ensure URL is accessible
|
|
- Check HTTPS is working
|
|
- Verify content is complete
|
|
|
|
---
|
|
|
|
## 📁 Important File Locations
|
|
|
|
| Item | Location |
|
|
|------|----------|
|
|
| Icons | `pwa/public/icons/icon-*.png` |
|
|
| Maskable Icon | `pwa/public/icons/icon-512-maskable.png` |
|
|
| Screenshots | `pwa/public/screenshots/` |
|
|
| Feature Graphic | `pwa/public/assets/feature-graphic.png` |
|
|
| Privacy Policy | `pwa/src/components/routes/PrivacyPolicyComponent.tsx` |
|
|
| Asset Links | `pwa/public/.well-known/assetlinks.json` |
|
|
| Nginx Config | `pwa/nginx.conf` |
|
|
| Manifest Config | `pwa/vite.config.ts` |
|
|
|
|
---
|
|
|
|
## 📚 Resources
|
|
|
|
- **Full Guide:** See `PLAY_STORE_GUIDE.md` in project root
|
|
- **Screenshots Guide:** See `pwa/public/screenshots/README.md`
|
|
- **Asset Links Guide:** See `pwa/public/.well-known/README.md`
|
|
- **PWABuilder:** https://www.pwabuilder.com/
|
|
- **Play Console:** https://play.google.com/console
|
|
|
|
---
|
|
|
|
**Current Status:** Ready for screenshot capture and PWABuilder packaging
|
|
|
|
**Next Action:** Capture screenshots from deployed PWA
|
|
|
|
Good luck! 🎉
|