Fix Android crash: don't register push without Firebase
On Android, PushNotifications.register() calls FirebaseMessaging.getInstance(), which throws "Default FirebaseApp is not initialized" when the build has no google-services.json. Capacitor runs the plugin method on its own thread, so the exception is an UNCAUGHT NATIVE crash a JS try/catch can't stop — the app died right after sign-in and on every relaunch. Gate Android push registration on a new server flag: /api/meetings/config now returns fcm (push.fcmReady() = FCM_SERVICE_ACCOUNT present). setupNativePush skips register() on Android unless fcm is true. Web-side fix — deploys without a rebuild; push auto-enables once Firebase (client google-services.json + server FCM) is set up. iOS/APNs unchanged. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -993,7 +993,7 @@ route('POST', '/api/calls/invite', async (req, res) => {
|
||||
// Does this deployment use the LiveKit SFU for meeting media? The client asks on load; if sfu is
|
||||
// false it uses the built-in P2P mesh. url is the browser-facing signaling endpoint (wss://…).
|
||||
route('GET', '/api/meetings/config', (req, res) => {
|
||||
json(res, 200, { sfu: LIVEKIT_ENABLED, url: LIVEKIT_ENABLED ? LIVEKIT_URL : '', callkit: CALLKIT_ENABLED });
|
||||
json(res, 200, { sfu: LIVEKIT_ENABLED, url: LIVEKIT_ENABLED ? LIVEKIT_URL : '', callkit: CALLKIT_ENABLED, fcm: PUSH.fcmReady() });
|
||||
});
|
||||
|
||||
// #5 GIF search — server-side GIPHY proxy so the API key never reaches the browser. Empty q → trending.
|
||||
|
||||
Reference in New Issue
Block a user