-
Notifications
You must be signed in to change notification settings - Fork 671
Description
`I'm using Firebase AI Logic on Android with:
- Firebase BoM: 34.10.0
- firebase-ai resolved version: 17.10.0
- model: gemini-2.5-flash-native-audio-preview-12-2025
- device: Samsung SM-S711B
- minSdk: 24
- targetSdk: 36
What works
- Firebase initializes correctly
- liveModel.connect() succeeds
- LiveSession is created successfully
- startAudioConversation() is invoked successfully
- RECORD_AUDIO permission is granted
- foreground service with foregroundServiceType="microphone" is configured correctly
- microphone indicator appears on device
- app UI receives runtime events correctly
What does NOT work
On Android only, the live audio conversation closes almost immediately after starting:
- no input transcript
- no output transcript
- no audio response from model
Session health check shows:
- session.isClosed() == true
- session.isAudioConversationActive() == false
Important comparison
The same model works correctly in Python on desktop, so this does not appear to be a model availability or prompt issue.
Current Android flow
The flow is minimal and follows the documented usage:
- connect()
- startAudioConversation()
There is no parallel custom receive() loop.
Important note
I already verified from SDK sources that startAudioConversation() is non-blocking and returns immediately by design, so the immediate return itself is not the issue.
The actual problem is that the underlying session closes immediately after startup.
Additional context
Earlier I had a custom receive loop, but I removed it after hitting:
"This session is already receiving. Please call stopReceiving() before calling this again."
So now the Android flow is clean and follows the recommended pattern:
- connect()
- startAudioConversation()
- no parallel receive()
Question
Is this a known Android / Firebase AI Logic SDK issue with native audio Live models?
Is there any Android-specific requirement, limitation, or known bug that would cause the session to close immediately after startAudioConversation() without surfacing a meaningful error?
Using Firebase AI Logic on Android:
- Firebase BoM 34.10.0
- firebase-ai 17.10.0
- model: gemini-2.5-flash-native-audio-preview-12-2025
- device: Samsung SM-S711B
Problem:
- liveModel.connect() succeeds
- startAudioConversation() is called successfully
- microphone activates
- but session closes almost immediately
- no input transcript
- no output transcript
- no audio response
The same model works correctly in Python on desktop.
Minimal Android flow:
- connect()
- startAudioConversation()
- no custom receive() loop
Relevant logs:
SESSION_CONNECTED
Calling startAudioConversation (non-blocking)...
startAudioConversation returned (internal coroutines are now running)
MIC_STARTED — mic capture and model playback are active
SESSION_HEALTH_CHECK #1: closed=true, audioActive=false, inputTranscripts=false, outputTranscripts=false
SESSION_CLOSED detected by health monitor
Question:
Is this a known Android/Firebase AI Logic issue with Live native audio models?
I'm using Firebase AI Logic on Android with:
- Firebase BoM 34.10.0
- firebase-ai 17.10.0
- model: gemini-2.5-flash-native-audio-preview-12-2025
What works:
- connect() succeeds
- startAudioConversation() is invoked
- microphone permission is granted
- foreground service is configured correctly
- microphone indicator appears
What fails:
- session closes almost immediately after startup
- no input transcript
- no output transcript
- no model audio
The same model works correctly in Python on desktop.
My Android flow is minimal and matches the docs:
- connect()
- startAudioConversation()
- no parallel custom receive() loop
Relevant logs:
SESSION_CONNECTED
Calling startAudioConversation (non-blocking)...
startAudioConversation returned (internal coroutines are now running)
MIC_STARTED — mic capture and model playback are active
SESSION_HEALTH_CHECK #1: closed=true, audioActive=false, inputTranscripts=false, outputTranscripts=false
SESSION_CLOSED detected by health monitor
I already checked SDK sources, and startAudioConversation() returning immediately is expected behavior, so that's not the bug.
Question:
Has anyone seen this on Android with Firebase AI Logic + Gemini Live native audio models?
SESSION_CONNECTED
Calling startAudioConversation (non-blocking)...
startAudioConversation returned (internal coroutines are now running)
MIC_STARTED — mic capture and model playback are active
SESSION_HEALTH_CHECK #1: closed=true, audioActive=false, inputTranscripts=false, outputTranscripts=false
SESSION_CLOSED detected by health monitor
`