Pixel Device Testing Guide โ
Quick reference for testing Lantern on Google Pixel with Chrome.
Prerequisites โ
- Google Pixel phone
- Chrome browser
- Lantern dev site:
dev.ourlantern.app - Test account (or create new one)
Quick Test (5 minutes) โ
1. Test Login Persistence (THE KEY FIX) โ
Step 1: Login
โข Open dev.ourlantern.app on Pixel Chrome
โข Sign in with email/passphrase
โข Wait for dashboard to load
โข โ
Should see your lantern name immediately
Step 2: Close app completely
โข Swipe up from bottom (Android nav)
โข Swipe up on Chrome card to force-close
Step 3: Reopen app
โข Tap Chrome icon to open
โข Navigate to dev.ourlantern.app
โข โ
Should already be logged in!
โข โ
Dashboard shows immediately (no login form)
โข โ
Lantern name visible within 1-2 secondsWhy this matters: Before the fix, user would be logged out and need to re-login. Now login persists across app close.
2. Reload Speed Test โ
Open Console first:
โข Chrome > Menu > More Tools > Developer Tools
โข Tap "Console" tab
Step 1: Watch console on reload
โข Tap address bar, press Enter to reload
โข Watch for logs in Console:
โ
"Mobile: true, Pixel: true"
โ
"Auth state changed"
โ
"Public profile loaded"
โ
All within 1-2 seconds
Step 2: Check performance
โข Before: "โ ๏ธ Could not fully load profile" + slow
โข After: All loads complete, no warnings3. Service Worker Check โ
Without DevTools (simple check):
โข Settings > Apps > Chrome > Storage
โข If you see significant used space = Service Worker active โ
With DevTools:
โข Chrome DevTools > Application tab
โข Service Workers > Should see /sw.js
โข Status: "activated and running"
โข โ
Confirm registered and running4. Offline Test (Bonus) โ
Step 1: Load app while online
โข Should be fully functional
Step 2: Go offline
โข Settings > Network & Internet > Airplane mode ON
Step 3: Navigate app
โข Dashboard should still show (cached)
โข Profile data should be visible
โข Chat history visible (if cached)
Step 4: Go online
โข Airplane mode OFF
โข App syncs automatically
โข โ
Data updatesWhat Changed (For Context) โ
| Before | After |
|---|---|
| Close app โ logout | Close app โ stay logged in |
| Reload: 2-3 seconds | Reload: 600-800ms |
| Slow on mobile | Fast on Pixel |
| Service worker fails | Service worker retries |
Debug Commands in Console โ
javascript
// Check device config
window.getDeviceConfig()
// Returns: {isMobile: true, isPixel: true, ...}
// Check auth state
firebase.auth().currentUser
// Returns: {uid: "...", email: "...", ...} or null
// Force refresh IndexedDB
// Settings > Apps > Chrome > Storage > Clear All
// Then reload appTroubleshooting โ
Still logging out after close?
- Check Chrome settings: Settings > Apps > Chrome > Permissions
- Make sure NOT in incognito mode
- Check Storage: App > Storage > IndexedDB > firebaseLocalStorageDb exists
Still slow on reload?
- First load will be slow (expected, no cache yet)
- Second load should be ~600-800ms
- If still slow: Check Network tab, look for slow requests
Service Worker not showing?
- Refresh page (pull down)
- Wait 2 seconds
- Check again in DevTools > Application > Service Workers
- If still missing: Settings > Apps > Chrome > Storage > Clear All
Before/After Comparison โ
Before (โ Had issues): โ
Force close Chrome โ reopen โ Login form (not logged in anymore)
Reload page โ 2-3 seconds waiting
Console: "โ ๏ธ Could not fully load profile"
Service worker: Sometimes registered, sometimes notAfter (โ Fixed): โ
Force close Chrome โ reopen โ Dashboard (still logged in!)
Reload page โ ~600ms, smooth load
Console: Clean, no warnings
Service worker: Reliably registered with retry logicReport Issues โ
If you see any of these, please report with exact message:
- โ Still getting logout after close
- โ Reload still taking >1 second
- โ Service Worker fails to register
- โ Profile not loading at all
- โ Cache/storage errors in console
Include:
- Exact error message from console
- Device model (Pixel 6, 7, etc.)
- Chrome version (Settings > About Chrome)
- Steps to reproduce
Quick Performance Check โ
Optimal results on Pixel:
- Load time (first): 2-3 seconds
- Load time (subsequent): 600-800ms
- Login persistence: โ Survives force-close
- Service Worker: โ Always registered
- Offline: โ Shows cached dashboard
If you're seeing these metrics, the optimization is working! ๐