Skip to content

Critical FCM Token Generation Bug in Firebase BoM 34.3.0 - AccountManager Returns Zero Accounts #7410

@EhabRabie

Description

@EhabRabie

[READ] Step 1: Are you in the right place?

Issues filed here should be about bugs in the code in this repository. If you have a general
question, need help debugging, or fall into some other category use one of these other channels:

  • For general technical questions, post a question on StackOverflow
    with the firebase tag.
  • For general Firebase discussion, use the
    firebase-talk google group.
  • For help troubleshooting your application that does not fall under one of the above categories,
    reach out to the personalized Firebase support channel.

[REQUIRED] Step 2: Describe your environment

  • Android Studio version: _Android Studio Ladybug Feature Drop | 2024.2.2
  • Firebase Component: **_Messaging ** (Database, Firestore, Storage, Functions, etc)
  • Component version: _Firebase BoM 34.3.0

[REQUIRED] Step 3: Describe the problem

Steps to reproduce:

Firebase BoM version 34.3.0 contains a critical bug that prevents FCM token generation to enable push notification via Firebase Messages on multiple Android devices and configurations. The issue manifests as AccountManager.getAccounts() returning zero accounts even when Google accounts are present on the device, causing FCM getToken() calls to hang indefinitely.

Environment
Firebase BoM Version: 34.3.0 (problematic)
Working BoM Version: 32.2.2
Device 1: Samsung Galaxy A52s (SM-A525F), Android 14
Device 2: Android Emulator (sdk_gphone64_x86_64), Android 12
Google Play Services: 25.35.34 (190400-804595880)

Relevant Code:

Dependencies

implementation platform('com.google.firebase:firebase-bom:34.3.0')
implementation 'com.google.firebase:firebase-messaging'
implementation 'com.google.firebase:firebase-analytics'

Symptoms
AccountManager.getAccountsByType("com.google") returns empty array (0 accounts)
FirebaseMessaging.getInstance().getToken() hangs indefinitely without error
Google Play Services shows as available and functional
Device has multiple Google accounts properly configured
Firebase initialization succeeds normally

Logs

D  Google Play Services available: true
D  Google accounts found: 0
D  All accounts on device: 0
E  Task still not complete after 5 seconds
E  Task status - isComplete: false, isCanceled: false, isSuccessful: false

Verification Testing
Working Configuration (BoM 32.2.2)

Same device, same project, same configuration
Only changed BoM version from 34.3.0 to 32.2.2
FCM token generates successfully within 1 second
AccountManager properly detects Google accounts

Cross-Device Testing
Issue reproduces identically on physical Samsung device and clean Android emulator
Multiple Firebase projects tested (same behavior)
SHA certificate fingerprints verified and updated (no effect)

Root Cause Analysis
The bug appears to be in the Firebase BoM 34.3.0 dependency management, likely related to:
Firebase Sessions integration changes
Account access permission handling modifications
Google Play Services version compatibility matrix updates

Impact Assessment

Severity: Critical - FCM is completely non-functional
Scope: Multi-device, multi-Android version
Workaround: Downgrade to BoM 32.2.2

// TODO(you): code here to reproduce the problem

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions