From fdf749b2c6b8bac20ce4065b4d4686cb700fad58 Mon Sep 17 00:00:00 2001
From: Eino-Ville Talvala
Date: Thu, 14 May 2020 15:20:10 -0700
Subject: [PATCH] Camera: Extend FEATURE_CAMERA_CONCURRENT to old API levels
Since running the front and back camera at the same time has been
possible since forever, there's no reason devices on older API levels
can't declare the FEATURE_CAMERA_CONCURRENT flag, even with the new
query APIs not present. Explicitly document that the flag can be set
on API level 29 or earlier, and what it means.
Test: m offline-sdk-docs
Bug: 77960042
Change-Id: I186cb53d95debcc62c98afdef8c629bd9c6a5919
---
core/java/android/content/pm/PackageManager.java | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 5795cd24f4b1a..23551abb62759 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -2016,8 +2016,16 @@ public abstract class PackageManager {
/**
* Feature for {@link #getSystemAvailableFeatures} and
* {@link #hasSystemFeature}: The device's main front and back cameras can stream
- * concurrently as described in {@link
- * android.hardware.camera2.CameraManager#getConcurrentCameraIds()}
+ * concurrently as described in {@link
+ * android.hardware.camera2.CameraManager#getConcurrentCameraIds()}.
+ *
+ * While {@link android.hardware.camera2.CameraManager#getConcurrentCameraIds()} and
+ * associated APIs are only available on API level 30 or newer, this feature flag may be
+ * advertised by devices on API levels below 30. If present on such a device, the same
+ * guarantees hold: The main front and main back camera can be used at the same time, with
+ * guaranteed stream configurations as defined in the table for concurrent streaming at
+ * {@link android.hardware.camera2.CameraDevice#createCaptureSession(android.hardware.camera2.params.SessionConfiguration)}.
+ *
*/
@SdkConstant(SdkConstantType.FEATURE)
public static final String FEATURE_CAMERA_CONCURRENT = "android.hardware.camera.concurrent";