Loading src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java +9 −4 Original line number Diff line number Diff line Loading @@ -171,21 +171,26 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { if (DBG) log("onReceive : incoming call intent"); mOperationLocalLog.log("onIncomingCall Received"); if (extras == null) extras = new Bundle(); if (mImsManager == null) return; try { // Network initiated USSD will be treated by mImsUssdListener boolean isUssd = extras.getBoolean(ImsManager.EXTRA_USSD, false); boolean isUssd = extras.getBoolean(MmTelFeature.EXTRA_IS_USSD, false); // For compatibility purposes with older vendor implmentations. isUssd |= extras.getBoolean(ImsManager.EXTRA_USSD, false); if (isUssd) { if (DBG) log("onReceive : USSD"); mUssdSession = mImsManager.takeCall(c, extras, mImsUssdListener); mUssdSession = mImsManager.takeCall(c, mImsUssdListener); if (mUssdSession != null) { mUssdSession.accept(ImsCallProfile.CALL_TYPE_VOICE); } return; } boolean isUnknown = extras.getBoolean(ImsManager.EXTRA_IS_UNKNOWN_CALL, false); boolean isUnknown = extras.getBoolean(MmTelFeature.EXTRA_IS_UNKNOWN_CALL, false); // For compatibility purposes with older vendor implmentations. isUnknown |= extras.getBoolean(ImsManager.EXTRA_IS_UNKNOWN_CALL, false); if (DBG) { log("onReceive : isUnknown = " + isUnknown + " fg = " + mForegroundCall.getState() Loading @@ -193,7 +198,7 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { } // Normal MT/Unknown call ImsCall imsCall = mImsManager.takeCall(c, extras, mImsCallListener); ImsCall imsCall = mImsManager.takeCall(c, mImsCallListener); ImsPhoneConnection conn = new ImsPhoneConnection(mPhone, imsCall, ImsPhoneCallTracker.this, (isUnknown ? mForegroundCall : mRingingCall), isUnknown); Loading tests/telephonytests/src/com/android/internal/telephony/imsphone/ImsPhoneCallTrackerTest.java +4 −4 Original line number Diff line number Diff line Loading @@ -178,11 +178,11 @@ public class ImsPhoneCallTrackerTest extends TelephonyTest { @Override public ImsCall answer(InvocationOnMock invocation) throws Throwable { mImsCallListener = (ImsCall.Listener) invocation.getArguments()[2]; (ImsCall.Listener) invocation.getArguments()[1]; mImsCall.setListener(mImsCallListener); return mImsCall; } }).when(mImsManager).takeCall(any(), any(), any()); }).when(mImsManager).takeCall(any(), any()); doAnswer(new Answer<ImsCall>() { @Override Loading Loading @@ -437,7 +437,7 @@ public class ImsPhoneCallTrackerTest extends TelephonyTest { // mock a new MT try { doReturn(mSecondImsCall).when(mImsManager).takeCall(any(IImsCallSession.class), any(Bundle.class), any(ImsCall.Listener.class)); any(ImsCall.Listener.class)); } catch (Exception ex) { ex.printStackTrace(); Assert.fail("unexpected exception thrown" + ex.getMessage()); Loading Loading @@ -607,7 +607,7 @@ public class ImsPhoneCallTrackerTest extends TelephonyTest { // mock a new MT try { doReturn(mSecondImsCall).when(mImsManager).takeCall(any(IImsCallSession.class), any(Bundle.class), any(ImsCall.Listener.class)); any(ImsCall.Listener.class)); mMmTelListener.onIncomingCall(mock(IImsCallSession.class), Bundle.EMPTY); mCTUT.acceptCall(ImsCallProfile.CALL_TYPE_VOICE); } catch (Exception ex) { Loading Loading
src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java +9 −4 Original line number Diff line number Diff line Loading @@ -171,21 +171,26 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { if (DBG) log("onReceive : incoming call intent"); mOperationLocalLog.log("onIncomingCall Received"); if (extras == null) extras = new Bundle(); if (mImsManager == null) return; try { // Network initiated USSD will be treated by mImsUssdListener boolean isUssd = extras.getBoolean(ImsManager.EXTRA_USSD, false); boolean isUssd = extras.getBoolean(MmTelFeature.EXTRA_IS_USSD, false); // For compatibility purposes with older vendor implmentations. isUssd |= extras.getBoolean(ImsManager.EXTRA_USSD, false); if (isUssd) { if (DBG) log("onReceive : USSD"); mUssdSession = mImsManager.takeCall(c, extras, mImsUssdListener); mUssdSession = mImsManager.takeCall(c, mImsUssdListener); if (mUssdSession != null) { mUssdSession.accept(ImsCallProfile.CALL_TYPE_VOICE); } return; } boolean isUnknown = extras.getBoolean(ImsManager.EXTRA_IS_UNKNOWN_CALL, false); boolean isUnknown = extras.getBoolean(MmTelFeature.EXTRA_IS_UNKNOWN_CALL, false); // For compatibility purposes with older vendor implmentations. isUnknown |= extras.getBoolean(ImsManager.EXTRA_IS_UNKNOWN_CALL, false); if (DBG) { log("onReceive : isUnknown = " + isUnknown + " fg = " + mForegroundCall.getState() Loading @@ -193,7 +198,7 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { } // Normal MT/Unknown call ImsCall imsCall = mImsManager.takeCall(c, extras, mImsCallListener); ImsCall imsCall = mImsManager.takeCall(c, mImsCallListener); ImsPhoneConnection conn = new ImsPhoneConnection(mPhone, imsCall, ImsPhoneCallTracker.this, (isUnknown ? mForegroundCall : mRingingCall), isUnknown); Loading
tests/telephonytests/src/com/android/internal/telephony/imsphone/ImsPhoneCallTrackerTest.java +4 −4 Original line number Diff line number Diff line Loading @@ -178,11 +178,11 @@ public class ImsPhoneCallTrackerTest extends TelephonyTest { @Override public ImsCall answer(InvocationOnMock invocation) throws Throwable { mImsCallListener = (ImsCall.Listener) invocation.getArguments()[2]; (ImsCall.Listener) invocation.getArguments()[1]; mImsCall.setListener(mImsCallListener); return mImsCall; } }).when(mImsManager).takeCall(any(), any(), any()); }).when(mImsManager).takeCall(any(), any()); doAnswer(new Answer<ImsCall>() { @Override Loading Loading @@ -437,7 +437,7 @@ public class ImsPhoneCallTrackerTest extends TelephonyTest { // mock a new MT try { doReturn(mSecondImsCall).when(mImsManager).takeCall(any(IImsCallSession.class), any(Bundle.class), any(ImsCall.Listener.class)); any(ImsCall.Listener.class)); } catch (Exception ex) { ex.printStackTrace(); Assert.fail("unexpected exception thrown" + ex.getMessage()); Loading Loading @@ -607,7 +607,7 @@ public class ImsPhoneCallTrackerTest extends TelephonyTest { // mock a new MT try { doReturn(mSecondImsCall).when(mImsManager).takeCall(any(IImsCallSession.class), any(Bundle.class), any(ImsCall.Listener.class)); any(ImsCall.Listener.class)); mMmTelListener.onIncomingCall(mock(IImsCallSession.class), Bundle.EMPTY); mCTUT.acceptCall(ImsCallProfile.CALL_TYPE_VOICE); } catch (Exception ex) { Loading