Make CameraX blocklist remote configurable.

This commit is contained in:
Greyson Parrelli
2022-08-05 09:38:04 -04:00
committed by Cody Henthorne
parent ace4157a14
commit 91d3f331e5
7 changed files with 59 additions and 148 deletions

View File

@@ -99,6 +99,7 @@ public final class FeatureFlags {
private static final String GIFT_BADGE_SEND_SUPPORT = "android.giftBadges.sending.2";
private static final String TELECOM_MANUFACTURER_ALLOWLIST = "android.calling.telecomAllowList";
private static final String TELECOM_MODEL_BLOCKLIST = "android.calling.telecomModelBlockList";
private static final String CAMERAX_MODEL_BLOCKLIST = "android.cameraXModelBlockList";
/**
* We will only store remote values for flags in this set. If you want a flag to be controllable
@@ -150,7 +151,8 @@ public final class FeatureFlags {
GIFT_BADGE_RECEIVE_SUPPORT,
GIFT_BADGE_SEND_SUPPORT,
TELECOM_MANUFACTURER_ALLOWLIST,
TELECOM_MODEL_BLOCKLIST
TELECOM_MODEL_BLOCKLIST,
CAMERAX_MODEL_BLOCKLIST
);
@VisibleForTesting
@@ -211,7 +213,8 @@ public final class FeatureFlags {
PAYMENTS_COUNTRY_BLOCKLIST,
USE_FCM_FOREGROUND_SERVICE,
TELECOM_MANUFACTURER_ALLOWLIST,
TELECOM_MODEL_BLOCKLIST
TELECOM_MODEL_BLOCKLIST,
CAMERAX_MODEL_BLOCKLIST
);
/**
@@ -492,6 +495,11 @@ public final class FeatureFlags {
return getString(TELECOM_MODEL_BLOCKLIST, "");
}
/** A comma-separated list of manufacturers that should *not* use CameraX. */
public static @NonNull String cameraXModelBlocklist() {
return getString(CAMERAX_MODEL_BLOCKLIST, "");
}
/** Whether or not hardware AEC should be used for calling on devices older than API 29. */
public static boolean useHardwareAecIfOlderThanApi29() {
return getBoolean(USE_HARDWARE_AEC_IF_OLD, false);