Loading src/java/com/android/internal/telephony/SubscriptionController.java +154 −93 File changed.Preview size limit exceeded, changes collapsed. Show changes src/java/com/android/internal/telephony/uicc/IccCardProxy.java +24 −19 Original line number Original line Diff line number Diff line Loading @@ -97,7 +97,6 @@ public class IccCardProxy extends Handler implements IccCard { private static final int EVENT_SUBSCRIPTION_DEACTIVATED = 502; private static final int EVENT_SUBSCRIPTION_DEACTIVATED = 502; private static final int EVENT_CARRIER_PRIVILIGES_LOADED = 503; private static final int EVENT_CARRIER_PRIVILIGES_LOADED = 503; // FIXME Rename mCardIndex to mSlotId. private Integer mCardIndex = null; private Integer mCardIndex = null; private final Object mLock = new Object(); private final Object mLock = new Object(); Loading @@ -120,23 +119,17 @@ public class IccCardProxy extends Handler implements IccCard { private boolean mInitialized = false; private boolean mInitialized = false; private State mExternalState = State.UNKNOWN; private State mExternalState = State.UNKNOWN; public IccCardProxy(Context context, CommandsInterface ci) { public IccCardProxy(Context context, CommandsInterface ci, int cardIndex) { log("Creating"); if (DBG) log("ctor: ci=" + ci + " cardIndex=" + cardIndex); mContext = context; mContext = context; mCi = ci; mCi = ci; mCardIndex = cardIndex; mCdmaSSM = CdmaSubscriptionSourceManager.getInstance(context, mCdmaSSM = CdmaSubscriptionSourceManager.getInstance(context, ci, this, EVENT_CDMA_SUBSCRIPTION_SOURCE_CHANGED, null); ci, this, EVENT_CDMA_SUBSCRIPTION_SOURCE_CHANGED, null); mUiccController = UiccController.getInstance(); mUiccController = UiccController.getInstance(); mUiccController.registerForIccChanged(this, EVENT_ICC_CHANGED, null); mUiccController.registerForIccChanged(this, EVENT_ICC_CHANGED, null); ci.registerForOn(this,EVENT_RADIO_ON, null); ci.registerForOn(this,EVENT_RADIO_ON, null); ci.registerForOffOrNotAvailable(this, EVENT_RADIO_OFF_OR_UNAVAILABLE, null); ci.registerForOffOrNotAvailable(this, EVENT_RADIO_OFF_OR_UNAVAILABLE, null); setExternalState(State.NOT_READY); } public IccCardProxy(Context context, CommandsInterface ci, int cardIndex) { this(context, ci); mCardIndex = cardIndex; resetProperties(); resetProperties(); setExternalState(State.NOT_READY, false); setExternalState(State.NOT_READY, false); Loading Loading @@ -197,6 +190,12 @@ public class IccCardProxy extends Handler implements IccCard { newQuietMode = (cdmaSource == Phone.CDMA_SUBSCRIPTION_NV) newQuietMode = (cdmaSource == Phone.CDMA_SUBSCRIPTION_NV) && (mCurrentAppType == UiccController.APP_FAM_3GPP2) && (mCurrentAppType == UiccController.APP_FAM_3GPP2) && !isLteOnCdmaMode; && !isLteOnCdmaMode; if (DBG) { log("updateQuietMode: cdmaSource=" + cdmaSource + " mCurrentAppType=" + mCurrentAppType + " isLteOnCdmaMode=" + isLteOnCdmaMode + " newQuietMode=" + newQuietMode); } } } if (mQuietMode == false && newQuietMode == true) { if (mQuietMode == false && newQuietMode == true) { Loading @@ -212,6 +211,8 @@ public class IccCardProxy extends Handler implements IccCard { } } mQuietMode = newQuietMode; mQuietMode = newQuietMode; setExternalState(mExternalState, true); setExternalState(mExternalState, true); } else { if (DBG) log("updateQuietMode: no changes don't setExternalState"); } } if (DBG) { if (DBG) { log("updateQuietMode: QuietMode is " + mQuietMode + " (app_type=" log("updateQuietMode: QuietMode is " + mQuietMode + " (app_type=" Loading Loading @@ -476,14 +477,16 @@ public class IccCardProxy extends Handler implements IccCard { private void broadcastIccStateChangedIntent(String value, String reason) { private void broadcastIccStateChangedIntent(String value, String reason) { synchronized (mLock) { synchronized (mLock) { if (mCardIndex == null) { if (mCardIndex == null || !SubscriptionManager.isValidSlotId(mCardIndex)) { loge("broadcastIccStateChangedIntent: Card Index is not set; Return!!"); loge("broadcastIccStateChangedIntent: mCardIndex=" + mCardIndex + " is invalid; Return!!"); return; return; } } if (mQuietMode) { if (mQuietMode) { log("QuietMode: NOT Broadcasting intent ACTION_SIM_STATE_CHANGED " + value log("broadcastIccStateChangedIntent: QuietMode" + " reason " + reason); + " NOT Broadcasting intent ACTION_SIM_STATE_CHANGED " + " value=" + value + " reason=" + reason); return; return; } } Loading @@ -493,8 +496,8 @@ public class IccCardProxy extends Handler implements IccCard { intent.putExtra(IccCardConstants.INTENT_KEY_ICC_STATE, value); intent.putExtra(IccCardConstants.INTENT_KEY_ICC_STATE, value); intent.putExtra(IccCardConstants.INTENT_KEY_LOCKED_REASON, reason); intent.putExtra(IccCardConstants.INTENT_KEY_LOCKED_REASON, reason); SubscriptionManager.putPhoneIdAndSubIdExtra(intent, mCardIndex); SubscriptionManager.putPhoneIdAndSubIdExtra(intent, mCardIndex); log("Broadcasting intent ACTION_SIM_STATE_CHANGED " + value log("broadcastIccStateChangedIntent intent ACTION_SIM_STATE_CHANGED value=" + value + " reason " + reason + " for mCardIndex : " + mCardIndex); + " reason=" + reason + " for mCardIndex=" + mCardIndex); ActivityManagerNative.broadcastStickyIntent(intent, READ_PHONE_STATE, ActivityManagerNative.broadcastStickyIntent(intent, READ_PHONE_STATE, UserHandle.USER_ALL); UserHandle.USER_ALL); } } Loading @@ -502,15 +505,17 @@ public class IccCardProxy extends Handler implements IccCard { private void setExternalState(State newState, boolean override) { private void setExternalState(State newState, boolean override) { synchronized (mLock) { synchronized (mLock) { if (mCardIndex == null) { if (mCardIndex == null || !SubscriptionManager.isValidSlotId(mCardIndex)) { loge("setExternalState: Card Index is not set; Return!!"); loge("setExternalState: mCardIndex=" + mCardIndex + " is invalid; Return!!"); return; return; } } if (!override && newState == mExternalState) { if (!override && newState == mExternalState) { loge("setExternalState: !override and newstate unchanged from " + newState); return; return; } } mExternalState = newState; mExternalState = newState; loge("setExternalState: set mCardIndex=" + mCardIndex + " mExternalState=" + mExternalState); setSystemProperty(PROPERTY_SIM_STATE, mCardIndex, getState().toString()); setSystemProperty(PROPERTY_SIM_STATE, mCardIndex, getState().toString()); broadcastIccStateChangedIntent(getIccStateIntentString(mExternalState), broadcastIccStateChangedIntent(getIccStateIntentString(mExternalState), getIccStateReason(mExternalState)); getIccStateReason(mExternalState)); Loading Loading
src/java/com/android/internal/telephony/SubscriptionController.java +154 −93 File changed.Preview size limit exceeded, changes collapsed. Show changes
src/java/com/android/internal/telephony/uicc/IccCardProxy.java +24 −19 Original line number Original line Diff line number Diff line Loading @@ -97,7 +97,6 @@ public class IccCardProxy extends Handler implements IccCard { private static final int EVENT_SUBSCRIPTION_DEACTIVATED = 502; private static final int EVENT_SUBSCRIPTION_DEACTIVATED = 502; private static final int EVENT_CARRIER_PRIVILIGES_LOADED = 503; private static final int EVENT_CARRIER_PRIVILIGES_LOADED = 503; // FIXME Rename mCardIndex to mSlotId. private Integer mCardIndex = null; private Integer mCardIndex = null; private final Object mLock = new Object(); private final Object mLock = new Object(); Loading @@ -120,23 +119,17 @@ public class IccCardProxy extends Handler implements IccCard { private boolean mInitialized = false; private boolean mInitialized = false; private State mExternalState = State.UNKNOWN; private State mExternalState = State.UNKNOWN; public IccCardProxy(Context context, CommandsInterface ci) { public IccCardProxy(Context context, CommandsInterface ci, int cardIndex) { log("Creating"); if (DBG) log("ctor: ci=" + ci + " cardIndex=" + cardIndex); mContext = context; mContext = context; mCi = ci; mCi = ci; mCardIndex = cardIndex; mCdmaSSM = CdmaSubscriptionSourceManager.getInstance(context, mCdmaSSM = CdmaSubscriptionSourceManager.getInstance(context, ci, this, EVENT_CDMA_SUBSCRIPTION_SOURCE_CHANGED, null); ci, this, EVENT_CDMA_SUBSCRIPTION_SOURCE_CHANGED, null); mUiccController = UiccController.getInstance(); mUiccController = UiccController.getInstance(); mUiccController.registerForIccChanged(this, EVENT_ICC_CHANGED, null); mUiccController.registerForIccChanged(this, EVENT_ICC_CHANGED, null); ci.registerForOn(this,EVENT_RADIO_ON, null); ci.registerForOn(this,EVENT_RADIO_ON, null); ci.registerForOffOrNotAvailable(this, EVENT_RADIO_OFF_OR_UNAVAILABLE, null); ci.registerForOffOrNotAvailable(this, EVENT_RADIO_OFF_OR_UNAVAILABLE, null); setExternalState(State.NOT_READY); } public IccCardProxy(Context context, CommandsInterface ci, int cardIndex) { this(context, ci); mCardIndex = cardIndex; resetProperties(); resetProperties(); setExternalState(State.NOT_READY, false); setExternalState(State.NOT_READY, false); Loading Loading @@ -197,6 +190,12 @@ public class IccCardProxy extends Handler implements IccCard { newQuietMode = (cdmaSource == Phone.CDMA_SUBSCRIPTION_NV) newQuietMode = (cdmaSource == Phone.CDMA_SUBSCRIPTION_NV) && (mCurrentAppType == UiccController.APP_FAM_3GPP2) && (mCurrentAppType == UiccController.APP_FAM_3GPP2) && !isLteOnCdmaMode; && !isLteOnCdmaMode; if (DBG) { log("updateQuietMode: cdmaSource=" + cdmaSource + " mCurrentAppType=" + mCurrentAppType + " isLteOnCdmaMode=" + isLteOnCdmaMode + " newQuietMode=" + newQuietMode); } } } if (mQuietMode == false && newQuietMode == true) { if (mQuietMode == false && newQuietMode == true) { Loading @@ -212,6 +211,8 @@ public class IccCardProxy extends Handler implements IccCard { } } mQuietMode = newQuietMode; mQuietMode = newQuietMode; setExternalState(mExternalState, true); setExternalState(mExternalState, true); } else { if (DBG) log("updateQuietMode: no changes don't setExternalState"); } } if (DBG) { if (DBG) { log("updateQuietMode: QuietMode is " + mQuietMode + " (app_type=" log("updateQuietMode: QuietMode is " + mQuietMode + " (app_type=" Loading Loading @@ -476,14 +477,16 @@ public class IccCardProxy extends Handler implements IccCard { private void broadcastIccStateChangedIntent(String value, String reason) { private void broadcastIccStateChangedIntent(String value, String reason) { synchronized (mLock) { synchronized (mLock) { if (mCardIndex == null) { if (mCardIndex == null || !SubscriptionManager.isValidSlotId(mCardIndex)) { loge("broadcastIccStateChangedIntent: Card Index is not set; Return!!"); loge("broadcastIccStateChangedIntent: mCardIndex=" + mCardIndex + " is invalid; Return!!"); return; return; } } if (mQuietMode) { if (mQuietMode) { log("QuietMode: NOT Broadcasting intent ACTION_SIM_STATE_CHANGED " + value log("broadcastIccStateChangedIntent: QuietMode" + " reason " + reason); + " NOT Broadcasting intent ACTION_SIM_STATE_CHANGED " + " value=" + value + " reason=" + reason); return; return; } } Loading @@ -493,8 +496,8 @@ public class IccCardProxy extends Handler implements IccCard { intent.putExtra(IccCardConstants.INTENT_KEY_ICC_STATE, value); intent.putExtra(IccCardConstants.INTENT_KEY_ICC_STATE, value); intent.putExtra(IccCardConstants.INTENT_KEY_LOCKED_REASON, reason); intent.putExtra(IccCardConstants.INTENT_KEY_LOCKED_REASON, reason); SubscriptionManager.putPhoneIdAndSubIdExtra(intent, mCardIndex); SubscriptionManager.putPhoneIdAndSubIdExtra(intent, mCardIndex); log("Broadcasting intent ACTION_SIM_STATE_CHANGED " + value log("broadcastIccStateChangedIntent intent ACTION_SIM_STATE_CHANGED value=" + value + " reason " + reason + " for mCardIndex : " + mCardIndex); + " reason=" + reason + " for mCardIndex=" + mCardIndex); ActivityManagerNative.broadcastStickyIntent(intent, READ_PHONE_STATE, ActivityManagerNative.broadcastStickyIntent(intent, READ_PHONE_STATE, UserHandle.USER_ALL); UserHandle.USER_ALL); } } Loading @@ -502,15 +505,17 @@ public class IccCardProxy extends Handler implements IccCard { private void setExternalState(State newState, boolean override) { private void setExternalState(State newState, boolean override) { synchronized (mLock) { synchronized (mLock) { if (mCardIndex == null) { if (mCardIndex == null || !SubscriptionManager.isValidSlotId(mCardIndex)) { loge("setExternalState: Card Index is not set; Return!!"); loge("setExternalState: mCardIndex=" + mCardIndex + " is invalid; Return!!"); return; return; } } if (!override && newState == mExternalState) { if (!override && newState == mExternalState) { loge("setExternalState: !override and newstate unchanged from " + newState); return; return; } } mExternalState = newState; mExternalState = newState; loge("setExternalState: set mCardIndex=" + mCardIndex + " mExternalState=" + mExternalState); setSystemProperty(PROPERTY_SIM_STATE, mCardIndex, getState().toString()); setSystemProperty(PROPERTY_SIM_STATE, mCardIndex, getState().toString()); broadcastIccStateChangedIntent(getIccStateIntentString(mExternalState), broadcastIccStateChangedIntent(getIccStateIntentString(mExternalState), getIccStateReason(mExternalState)); getIccStateReason(mExternalState)); Loading