[gonk1.3][SPRD]Music app is in the background and playing, long press home button and kill music , the playing icon on the statusbar doesn't dismiss immediately.

RESOLVED FIXED

Status

Firefox OS
AudioChannel
P2
major
RESOLVED FIXED
4 years ago
3 years ago

People

(Reporter: jinchao.wang, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

4 years ago
[gonk1.3][SPRD]Music app is in the background and playing, long press home button and kill music , the playing icon on the statusbar doesn't dismiss  immediately.Why the mozChromeEvent message with value of audio-channel-changed is sent Delayed.
(Reporter)

Updated

4 years ago
Severity: normal → major
Priority: -- → P2
hi Fabrice,

May I ask is there any way that gecko can handle this situation? I'm not sure what is the exactly problem,  but I tried flame/buri/tarako/dolphin, only in-process app has this issue.
In status bar, it is listening on "audiochannelchange" event.
In OOP mode, when app is killed in card view, then gecko resource (audiochannel) will be released immediately. However in in-process mode, the resource will not be released immediately. But We can't decided when GC will be triggered to free the resource. Or can app listen other event to stop music when iframe is removed?

Thanks

Sincerely,
Wayne
Flags: needinfo?(fabrice)
Wayne, the system app knows when in process frames are removed, since they are never killed by the LMK. So we can try something like: when the system app removes an inprocess iframe from the DOM, it sends a mozContentEvent to shell.js, and shell.js can trigger a forced GC. Do you think you can write this patch or do you need help?
Flags: needinfo?(fabrice)
also, in the in-proc case, we should be able to listen to the unload() event in the app right? Can we force close the channel here?

Comment 4

4 years ago
(In reply to Fabrice Desré [:fabrice] from comment #3)
> also, in the in-proc case, we should be able to listen to the unload() event
> in the app right? Can we force close the channel here?

Luke did the test but unfortunately the unload event isn't fired even in the in-proc case. :(
(Reporter)

Comment 5

3 years ago
just close
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.