Camera: Filter small JPEG sizes based on targetSdkVersion
To maintain backward compatbility, filter out small (<1080p) JPEG sizes
for Performance Class 12 primary cameras in camera service if the
application targets sdk version 31.
Maintain old behavior for applications targetting older sdk version.
Also remove some redundant code in CameraProviderManager.
Test: Camera CTS
Bug: 187913092
Change-Id: I302fb90e331dc9c7da26f51ab99ab150bba68493
diff --git a/camera/tests/CameraBinderTests.cpp b/camera/tests/CameraBinderTests.cpp
index a0773a2..9f2f430 100644
--- a/camera/tests/CameraBinderTests.cpp
+++ b/camera/tests/CameraBinderTests.cpp
@@ -363,7 +363,8 @@
// Check metadata binder call
CameraMetadata metadata;
- res = service->getCameraCharacteristics(cameraId, &metadata);
+ res = service->getCameraCharacteristics(cameraId,
+ /*targetSdkVersion*/__ANDROID_API_FUTURE__, &metadata);
EXPECT_TRUE(res.isOk()) << res;
EXPECT_FALSE(metadata.isEmpty());
@@ -379,7 +380,7 @@
sp<hardware::camera2::ICameraDeviceUser> device;
res = service->connectDevice(callbacks, cameraId, String16("meeeeeeeee!"),
{}, hardware::ICameraService::USE_CALLING_UID, /*oomScoreOffset*/ 0,
- /*out*/&device);
+ /*targetSdkVersion*/__ANDROID_API_FUTURE__, /*out*/&device);
EXPECT_TRUE(res.isOk()) << res;
ASSERT_NE(nullptr, device.get());
device->disconnect();
@@ -422,7 +423,7 @@
SCOPED_TRACE("openNewDevice");
binder::Status res = service->connectDevice(callbacks, deviceId, String16("meeeeeeeee!"),
{}, hardware::ICameraService::USE_CALLING_UID, /*oomScoreOffset*/ 0,
- /*out*/&device);
+ /*targetSdkVersion*/__ANDROID_API_FUTURE__, /*out*/&device);
EXPECT_TRUE(res.isOk()) << res;
}
auto p = std::make_pair(callbacks, device);
diff --git a/camera/tests/CameraCharacteristicsPermission.cpp b/camera/tests/CameraCharacteristicsPermission.cpp
index 135d2a3..76dc38c 100644
--- a/camera/tests/CameraCharacteristicsPermission.cpp
+++ b/camera/tests/CameraCharacteristicsPermission.cpp
@@ -73,7 +73,8 @@
CameraMetadata metadata;
std::vector<int32_t> tagsNeedingPermission;
- rc = mCameraService->getCameraCharacteristics(cameraIdStr, &metadata);
+ rc = mCameraService->getCameraCharacteristics(cameraIdStr,
+ /*targetSdkVersion*/__ANDROID_API_FUTURE__, &metadata);
ASSERT_TRUE(rc.isOk());
EXPECT_FALSE(metadata.isEmpty());
EXPECT_EQ(metadata.removePermissionEntries(CAMERA_METADATA_INVALID_VENDOR_ID,
diff --git a/camera/tests/CameraZSLTests.cpp b/camera/tests/CameraZSLTests.cpp
index 02c6e2a..efd9dae 100644
--- a/camera/tests/CameraZSLTests.cpp
+++ b/camera/tests/CameraZSLTests.cpp
@@ -181,7 +181,8 @@
}
CameraMetadata metadata;
- rc = mCameraService->getCameraCharacteristics(cameraIdStr, &metadata);
+ rc = mCameraService->getCameraCharacteristics(cameraIdStr,
+ /*targetSdkVersion*/__ANDROID_API_FUTURE__, &metadata);
if (!rc.isOk()) {
// The test is relevant only for cameras with Hal 3.x
// support.
@@ -207,7 +208,8 @@
rc = mCameraService->connect(this, cameraId,
String16("ZSLTest"), hardware::ICameraService::USE_CALLING_UID,
- hardware::ICameraService::USE_CALLING_PID, &cameraDevice);
+ hardware::ICameraService::USE_CALLING_PID,
+ /*targetSdkVersion*/__ANDROID_API_FUTURE__, &cameraDevice);
EXPECT_TRUE(rc.isOk());
CameraParameters params(cameraDevice->getParameters());