Fixed
Status Update
Comments
tr...@google.com <tr...@google.com>
tr...@google.com <tr...@google.com>
ap...@google.com <ap...@google.com> #2
SDK Revision 5
Description
CameraX currently will only attempt to open a camera when it becomes available as reported by the Camera2 CameraManager.AvailabilityCallback . This means if another app does not close the camera when it goes into the background, CameraX will not be able to open the camera in the foreground.
On API 29, this causes the camera to stay in a
PENDING_OPEN
state for 30 seconds until the OS disconnects the camera from the background process. In modified OSes where this 30 second background restriction has been removed, this could cause the camera to never open, and there is no way to tell CameraX to attempt to steal the camera from another process.While we don't want CameraX to continually attempt to steal the camera from other processes or camera APIs within the same process, we still would like the camera to open, at least on the initial
bindToLifecycle()
call as long as the app is the current highest-priority camera client.