[Flagging Addition] Add Flagging feature for Telephony Analytics Enabling
- Add enable_telephony_analytics flag to control TelephonyAnalytics Feature
Bug: 309896524
Test: atest FrameworkTelephonyTests and CtsTelephonyTestCases
Change-Id: I61c5deb48496ad41e722ed3fc7f4ce72f00c4fcc
diff --git a/flags/misc.aconfig b/flags/misc.aconfig
index deda579..159d462 100644
--- a/flags/misc.aconfig
+++ b/flags/misc.aconfig
@@ -56,3 +56,10 @@
description: "Load default data subid on create in PhoneGlobals."
bug: "310591561"
}
+
+flag {
+ name: "enable_telephony_analytics"
+ namespace: "telephony"
+ description: "Enable Telephony Analytics information of Service State , Sms and Call scenarios"
+ bug: "309896524"
+}
diff --git a/src/java/com/android/internal/telephony/Phone.java b/src/java/com/android/internal/telephony/Phone.java
index 72d0622..b991b8e 100644
--- a/src/java/com/android/internal/telephony/Phone.java
+++ b/src/java/com/android/internal/telephony/Phone.java
@@ -660,7 +660,7 @@
mCi.registerForSrvccStateChanged(this, EVENT_SRVCC_STATE_CHANGED, null);
}
//Initialize Telephony Analytics
- if (isTelephonyAnalyticsEnabled()) {
+ if (mFeatureFlags.enableTelephonyAnalytics()) {
mTelephonyAnalytics = new TelephonyAnalytics(this);
}
}
@@ -4780,11 +4780,6 @@
return mTelephonyAnalytics;
}
- public boolean isTelephonyAnalyticsEnabled() {
- return mContext.getResources().getBoolean(
- com.android.internal.R.bool.telephony_analytics_switch);
- }
-
/** @hide */
public CarrierPrivilegesTracker getCarrierPrivilegesTracker() {
return null;
diff --git a/tests/telephonytests/src/com/android/internal/telephony/CellBroadcastConfigTrackerTest.java b/tests/telephonytests/src/com/android/internal/telephony/CellBroadcastConfigTrackerTest.java
index 21a14b2..722f6ac 100644
--- a/tests/telephonytests/src/com/android/internal/telephony/CellBroadcastConfigTrackerTest.java
+++ b/tests/telephonytests/src/com/android/internal/telephony/CellBroadcastConfigTrackerTest.java
@@ -51,6 +51,7 @@
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
+import org.mockito.Mockito;
import java.util.ArrayList;
import java.util.Arrays;
@@ -67,6 +68,7 @@
@Before
public void setUp() throws Exception {
super.setUp(getClass().getSimpleName());
+ mFeatureFlags = Mockito.mock(FeatureFlags.class);
mSpyCi = spy(mSimulatedCommands);
mPhone = new GsmCdmaPhone(mContext, mSpyCi, mNotifier, true, 0,
PhoneConstants.PHONE_TYPE_GSM, mTelephonyComponentFactory, (c, p) -> mImsManager,
diff --git a/tests/telephonytests/src/com/android/internal/telephony/gsm/GsmMmiCodeTest.java b/tests/telephonytests/src/com/android/internal/telephony/gsm/GsmMmiCodeTest.java
index 1f2cb15..17a428b 100644
--- a/tests/telephonytests/src/com/android/internal/telephony/gsm/GsmMmiCodeTest.java
+++ b/tests/telephonytests/src/com/android/internal/telephony/gsm/GsmMmiCodeTest.java
@@ -43,6 +43,7 @@
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
+import org.mockito.Mockito;
import java.util.ArrayList;
import java.util.concurrent.Executor;
@@ -65,6 +66,7 @@
@Before
public void setUp() throws Exception {
super.setUp(getClass().getSimpleName());
+ mFeatureFlags = Mockito.mock(FeatureFlags.class);
doReturn(mExecutor).when(mContext).getMainExecutor();
mGsmCdmaPhoneUT = new GsmCdmaPhone(mContext, mSimulatedCommands, mNotifier, true, 0,
PhoneConstants.PHONE_TYPE_GSM, mTelephonyComponentFactory, (c, p) -> mImsManager,