Questions
Android OneSignal — subscription registers but no notification channels created, no Push Token acquired
Has anyone else hit this on Android? Looking for pointers from anyone who's worked through a similar issue.
TL;DR: OneSignal plugin appears partially wired — subscription registers with a player ID, permission prompt fires, OneSignal dashboard reports messages as Delivered, BUT no notification channels are ever created on the device, no Push Token is attached to the subscription, and notifications never actually display on the device.
Setup
- Median Android build, OneSignal plugin enabled
- OneSignal app_id configured in App Studio
- Custom Firebase project (FCM API enabled, service account JSON uploaded to OneSignal)
- Package name verified to match between App Studio config and Firebase Android app registration
- Tried both v5 (default) and Legacy v4 SDK modes — same symptoms in both
- Foreground notifications: Show
- Data sharing mode: Automatic
- Test device: Google Pixel 9 Pro XL, latest Android
What I've tried
- Multiple full uninstall + phone reboot + fresh APK sideload cycles
- POST_NOTIFICATIONS granted at OS level (system permission prompt fires on first launch)
- Battery optimisation set to Unrestricted
- Verified package name match in Firebase Console exactly equals App Studio config
- Verified FCM API enabled in the correct Google Cloud project
- Verified OneSignal Platforms tab shows both APNs and FCM as Active
- Toggled Legacy Mode on/off and rebuilt each time
Diagnostic observations
- No notification channels listed in Settings → Apps → [App] → Notifications. The OneSignal SDK is supposed to create at least one default channel on init; this never happens. "This app has not posted any notifications" message shown.
- Subscription registers in OneSignal with a player ID, but the Push Token / Identifier field is empty.
- Status details field is blank (-) in the OneSignal subscription detail page.
- OneSignal dashboard reports messages as Delivered in the delivery report, with 1 device targeted, no failures.
- Firebase Cloud Console shows FCM SendMessage API is being called against the project, with roughly 28% error rate over a small sample.
This combination suggests OneSignal.initWithContext() either isn't firing in the generated Application class, or is firing but failing silently before it can register channels and acquire an FCM token. Per OneSignal's own Android integration documentation, that single call is what kicks off channel registration, FCM token acquisition, and the rest.
Questions
- Has anyone seen this exact symptom set on Android (no channels created, empty Push Token, blank Status, but subscription registers)?
- Is there an App Studio setting I might have missed that controls whether the OneSignal plugin properly wires
initWithContext()into the Application class? - Should
google-services.jsonbe uploaded somewhere in App Studio for the Android build, or does the plugin handle FCM project config entirely at runtime via the OneSignal app_id? - Any reliable way to verify from outside whether the plugin actually generates the init call — short of ejecting and inspecting the Android Studio source?
Happy to provide more diagnostic detail if useful. Self-serve plan so I'm working through this myself — any community pointers appreciated.
Thanks