Loading src/java/com/android/internal/telephony/Phone.java +14 −2 Original line number Diff line number Diff line Loading @@ -321,8 +321,20 @@ public abstract class Phone extends Handler implements PhoneInternalInterface { * TODO: Replace this with a proper exception; {@link CallStateException} doesn't make sense. */ public static final String CS_FALLBACK = "cs_fallback"; public static final String EXTRA_KEY_ALERT_TITLE = "alertTitle"; public static final String EXTRA_KEY_ALERT_MESSAGE = "alertMessage"; /** * @deprecated Use {@link android.telephony.ims.ImsManager#EXTRA_WFC_REGISTRATION_FAILURE_TITLE} * instead. */ @Deprecated public static final String EXTRA_KEY_ALERT_TITLE = android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_TITLE; /** * @deprecated Use * {@link android.telephony.ims.ImsManager#EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE} instead. */ @Deprecated public static final String EXTRA_KEY_ALERT_MESSAGE = android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE; public static final String EXTRA_KEY_ALERT_SHOW = "alertShow"; public static final String EXTRA_KEY_NOTIFICATION_MESSAGE = "notificationMessage"; Loading src/java/com/android/internal/telephony/imsphone/ImsPhone.java +15 −8 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.internal.telephony.imsphone; import static android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE; import static android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_TITLE; import static com.android.internal.telephony.CommandsInterface.CB_FACILITY_BAIC; import static com.android.internal.telephony.CommandsInterface.CB_FACILITY_BAICr; import static com.android.internal.telephony.CommandsInterface.CB_FACILITY_BAOC; Loading Loading @@ -1936,16 +1939,19 @@ public class ImsPhone extends ImsPhoneBase { // Default result code (as passed to sendOrderedBroadcast) // means that intent was not received by WfcSettings. CharSequence title = intent.getCharSequenceExtra(EXTRA_KEY_ALERT_TITLE); CharSequence messageAlert = intent.getCharSequenceExtra(EXTRA_KEY_ALERT_MESSAGE); CharSequence messageNotification = intent.getCharSequenceExtra(EXTRA_KEY_NOTIFICATION_MESSAGE); CharSequence title = intent.getCharSequenceExtra(EXTRA_WFC_REGISTRATION_FAILURE_TITLE); CharSequence messageAlert = intent.getCharSequenceExtra(EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE); CharSequence messageNotification = intent.getCharSequenceExtra(EXTRA_KEY_NOTIFICATION_MESSAGE); Intent resultIntent = new Intent(Intent.ACTION_MAIN); resultIntent.setClassName("com.android.settings", "com.android.settings.Settings$WifiCallingSettingsActivity"); resultIntent.putExtra(EXTRA_KEY_ALERT_SHOW, true); resultIntent.putExtra(EXTRA_KEY_ALERT_TITLE, title); resultIntent.putExtra(EXTRA_KEY_ALERT_MESSAGE, messageAlert); resultIntent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_TITLE, title); resultIntent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE, messageAlert); PendingIntent resultPendingIntent = PendingIntent.getActivity( mContext, Loading Loading @@ -2070,9 +2076,10 @@ public class ImsPhone extends ImsPhoneBase { // If WfcSettings are active then alert will be shown // otherwise notification will be added. Intent intent = new Intent(ImsManager.ACTION_IMS_REGISTRATION_ERROR); intent.putExtra(EXTRA_KEY_ALERT_TITLE, title); intent.putExtra(EXTRA_KEY_ALERT_MESSAGE, messageAlert); Intent intent = new Intent( android.telephony.ims.ImsManager.ACTION_WFC_IMS_REGISTRATION_ERROR); intent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_TITLE, title); intent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE, messageAlert); intent.putExtra(EXTRA_KEY_NOTIFICATION_MESSAGE, messageNotification); mContext.sendOrderedBroadcast(intent, null, mResultReceiver, null, Activity.RESULT_OK, null, null); Loading tests/telephonytests/src/com/android/internal/telephony/imsphone/ImsPhoneTest.java +7 −10 Original line number Diff line number Diff line Loading @@ -68,7 +68,6 @@ import androidx.test.filters.FlakyTest; import com.android.ims.FeatureConnector; import com.android.ims.ImsEcbmStateListener; import com.android.ims.ImsManager; import com.android.ims.ImsUtInterface; import com.android.ims.RcsFeatureManager; import com.android.internal.telephony.Call; Loading Loading @@ -627,15 +626,14 @@ public class ImsPhoneTest extends TelephonyTest { assertEquals(false, mImsPhoneUT.getWakeLock().isHeld()); } @FlakyTest @Test @SmallTest @Ignore public void testProcessDisconnectReason() throws Exception { // set up CarrierConfig PersistableBundle bundle = mContextFixture.getCarrierConfigBundle(); bundle.putStringArray(CarrierConfigManager.KEY_WFC_OPERATOR_ERROR_CODES_STRING_ARRAY, new String[]{"REG09|0"}); doReturn(true).when(mImsManager).isWfcEnabledByUser(); // set up overlays String title = "title"; Loading @@ -652,18 +650,17 @@ public class ImsPhoneTest extends TelephonyTest { mImsPhoneUT.processDisconnectReason( new ImsReasonInfo(ImsReasonInfo.CODE_REGISTRATION_ERROR, 0, "REG09")); // TODO: Verify that WFC has been turned off (can't do it right now because // setWfcSetting is static). //verify(mImsManager).setWfcSetting(any(), eq(false)); ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class); verify(mContext).sendOrderedBroadcast( intent.capture(), nullable(String.class), any(BroadcastReceiver.class), nullable(Handler.class), eq(Activity.RESULT_OK), nullable(String.class), nullable(Bundle.class)); assertEquals(ImsManager.ACTION_IMS_REGISTRATION_ERROR, intent.getValue().getAction()); assertEquals(title, intent.getValue().getStringExtra(Phone.EXTRA_KEY_ALERT_TITLE)); assertEquals(messageAlert, intent.getValue().getStringExtra(Phone.EXTRA_KEY_ALERT_MESSAGE)); assertEquals(android.telephony.ims.ImsManager.ACTION_WFC_IMS_REGISTRATION_ERROR, intent.getValue().getAction()); assertEquals(title, intent.getValue().getStringExtra( android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_TITLE)); assertEquals(messageAlert, intent.getValue().getStringExtra( android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE)); assertEquals(messageNotification, intent.getValue().getStringExtra(Phone.EXTRA_KEY_NOTIFICATION_MESSAGE)); } Loading Loading
src/java/com/android/internal/telephony/Phone.java +14 −2 Original line number Diff line number Diff line Loading @@ -321,8 +321,20 @@ public abstract class Phone extends Handler implements PhoneInternalInterface { * TODO: Replace this with a proper exception; {@link CallStateException} doesn't make sense. */ public static final String CS_FALLBACK = "cs_fallback"; public static final String EXTRA_KEY_ALERT_TITLE = "alertTitle"; public static final String EXTRA_KEY_ALERT_MESSAGE = "alertMessage"; /** * @deprecated Use {@link android.telephony.ims.ImsManager#EXTRA_WFC_REGISTRATION_FAILURE_TITLE} * instead. */ @Deprecated public static final String EXTRA_KEY_ALERT_TITLE = android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_TITLE; /** * @deprecated Use * {@link android.telephony.ims.ImsManager#EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE} instead. */ @Deprecated public static final String EXTRA_KEY_ALERT_MESSAGE = android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE; public static final String EXTRA_KEY_ALERT_SHOW = "alertShow"; public static final String EXTRA_KEY_NOTIFICATION_MESSAGE = "notificationMessage"; Loading
src/java/com/android/internal/telephony/imsphone/ImsPhone.java +15 −8 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.internal.telephony.imsphone; import static android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE; import static android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_TITLE; import static com.android.internal.telephony.CommandsInterface.CB_FACILITY_BAIC; import static com.android.internal.telephony.CommandsInterface.CB_FACILITY_BAICr; import static com.android.internal.telephony.CommandsInterface.CB_FACILITY_BAOC; Loading Loading @@ -1936,16 +1939,19 @@ public class ImsPhone extends ImsPhoneBase { // Default result code (as passed to sendOrderedBroadcast) // means that intent was not received by WfcSettings. CharSequence title = intent.getCharSequenceExtra(EXTRA_KEY_ALERT_TITLE); CharSequence messageAlert = intent.getCharSequenceExtra(EXTRA_KEY_ALERT_MESSAGE); CharSequence messageNotification = intent.getCharSequenceExtra(EXTRA_KEY_NOTIFICATION_MESSAGE); CharSequence title = intent.getCharSequenceExtra(EXTRA_WFC_REGISTRATION_FAILURE_TITLE); CharSequence messageAlert = intent.getCharSequenceExtra(EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE); CharSequence messageNotification = intent.getCharSequenceExtra(EXTRA_KEY_NOTIFICATION_MESSAGE); Intent resultIntent = new Intent(Intent.ACTION_MAIN); resultIntent.setClassName("com.android.settings", "com.android.settings.Settings$WifiCallingSettingsActivity"); resultIntent.putExtra(EXTRA_KEY_ALERT_SHOW, true); resultIntent.putExtra(EXTRA_KEY_ALERT_TITLE, title); resultIntent.putExtra(EXTRA_KEY_ALERT_MESSAGE, messageAlert); resultIntent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_TITLE, title); resultIntent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE, messageAlert); PendingIntent resultPendingIntent = PendingIntent.getActivity( mContext, Loading Loading @@ -2070,9 +2076,10 @@ public class ImsPhone extends ImsPhoneBase { // If WfcSettings are active then alert will be shown // otherwise notification will be added. Intent intent = new Intent(ImsManager.ACTION_IMS_REGISTRATION_ERROR); intent.putExtra(EXTRA_KEY_ALERT_TITLE, title); intent.putExtra(EXTRA_KEY_ALERT_MESSAGE, messageAlert); Intent intent = new Intent( android.telephony.ims.ImsManager.ACTION_WFC_IMS_REGISTRATION_ERROR); intent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_TITLE, title); intent.putExtra(EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE, messageAlert); intent.putExtra(EXTRA_KEY_NOTIFICATION_MESSAGE, messageNotification); mContext.sendOrderedBroadcast(intent, null, mResultReceiver, null, Activity.RESULT_OK, null, null); Loading
tests/telephonytests/src/com/android/internal/telephony/imsphone/ImsPhoneTest.java +7 −10 Original line number Diff line number Diff line Loading @@ -68,7 +68,6 @@ import androidx.test.filters.FlakyTest; import com.android.ims.FeatureConnector; import com.android.ims.ImsEcbmStateListener; import com.android.ims.ImsManager; import com.android.ims.ImsUtInterface; import com.android.ims.RcsFeatureManager; import com.android.internal.telephony.Call; Loading Loading @@ -627,15 +626,14 @@ public class ImsPhoneTest extends TelephonyTest { assertEquals(false, mImsPhoneUT.getWakeLock().isHeld()); } @FlakyTest @Test @SmallTest @Ignore public void testProcessDisconnectReason() throws Exception { // set up CarrierConfig PersistableBundle bundle = mContextFixture.getCarrierConfigBundle(); bundle.putStringArray(CarrierConfigManager.KEY_WFC_OPERATOR_ERROR_CODES_STRING_ARRAY, new String[]{"REG09|0"}); doReturn(true).when(mImsManager).isWfcEnabledByUser(); // set up overlays String title = "title"; Loading @@ -652,18 +650,17 @@ public class ImsPhoneTest extends TelephonyTest { mImsPhoneUT.processDisconnectReason( new ImsReasonInfo(ImsReasonInfo.CODE_REGISTRATION_ERROR, 0, "REG09")); // TODO: Verify that WFC has been turned off (can't do it right now because // setWfcSetting is static). //verify(mImsManager).setWfcSetting(any(), eq(false)); ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class); verify(mContext).sendOrderedBroadcast( intent.capture(), nullable(String.class), any(BroadcastReceiver.class), nullable(Handler.class), eq(Activity.RESULT_OK), nullable(String.class), nullable(Bundle.class)); assertEquals(ImsManager.ACTION_IMS_REGISTRATION_ERROR, intent.getValue().getAction()); assertEquals(title, intent.getValue().getStringExtra(Phone.EXTRA_KEY_ALERT_TITLE)); assertEquals(messageAlert, intent.getValue().getStringExtra(Phone.EXTRA_KEY_ALERT_MESSAGE)); assertEquals(android.telephony.ims.ImsManager.ACTION_WFC_IMS_REGISTRATION_ERROR, intent.getValue().getAction()); assertEquals(title, intent.getValue().getStringExtra( android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_TITLE)); assertEquals(messageAlert, intent.getValue().getStringExtra( android.telephony.ims.ImsManager.EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE)); assertEquals(messageNotification, intent.getValue().getStringExtra(Phone.EXTRA_KEY_NOTIFICATION_MESSAGE)); } Loading