Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ab02e0b1 authored by Shuzhen Wang's avatar Shuzhen Wang
Browse files

Camera: Clarify doc for registerAvailabilityCallback

Camera availability callbacks's order matter. If the application runs
the callbacks on an executor, and the executor is implemented using
multiple threads, the order of the callbacks may change.

Test: Build and read docs
Bug: 263235259
Change-Id: I88913215e0545a096958aaba6b7b2b7d73a4f0a0
parent 99d5281a
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -364,6 +364,23 @@ public final class CameraManager {
     * except that it uses {@link java.util.concurrent.Executor} as an argument
     * instead of {@link android.os.Handler}.</p>
     *
     * <p>Note: If the order between some availability callbacks matters, the implementation of the
     * executor should handle those callbacks in the same thread to maintain the callbacks' order.
     * Some examples are:</p>
     *
     * <ul>
     *
     * <li>{@link AvailabilityCallback#onCameraAvailable} and
     * {@link AvailabilityCallback#onCameraUnavailable} of the same camera ID.</li>
     *
     * <li>{@link AvailabilityCallback#onCameraAvailable} or
     * {@link AvailabilityCallback#onCameraUnavailable} of a logical multi-camera, and {@link
     * AvailabilityCallback#onPhysicalCameraUnavailable} or
     * {@link AvailabilityCallback#onPhysicalCameraAvailable} of its physical
     * cameras.</li>
     *
     * </ul>
     *
     * @param executor The executor which will be used to invoke the callback.
     * @param callback the new callback to send camera availability notices to
     *