Added telephony manager set sim power state API

The new API can be used to power up/down the SIM. This is equivalent
to inserting and removing the card.

Test: Telephony sanity tests
bug: 32224755

Change-Id: Ib82ab1eff613946e7c31c9b2131183a40d09af80
This commit is contained in:
Jack Yu
2017-02-16 15:31:59 -08:00
parent 5e2a2ee39e
commit e25a4dfb6a
2 changed files with 46 additions and 0 deletions

View File

@@ -5332,6 +5332,44 @@ public class TelephonyManager {
TelephonyProperties.PROPERTY_SIM_STATE, state);
}
/**
* Set SIM card power state. Request is equivalent to inserting or removing the card.
*
* @param powerUp True if powering up the SIM, otherwise powering down
*
* <p>Requires Permission:
* {@link android.Manifest.permission#MODIFY_PHONE_STATE MODIFY_PHONE_STATE}
*
* @hide
**/
public void setSimPowerState(boolean powerUp) {
setSimPowerStateForSlot(getDefaultSim(), powerUp);
}
/**
* Set SIM card power state. Request is equivalent to inserting or removing the card.
*
* @param slotId SIM slot id
* @param powerUp True if powering up the SIM, otherwise powering down
*
* <p>Requires Permission:
* {@link android.Manifest.permission#MODIFY_PHONE_STATE MODIFY_PHONE_STATE}
*
* @hide
**/
public void setSimPowerStateForSlot(int slotId, boolean powerUp) {
try {
ITelephony telephony = getITelephony();
if (telephony != null) {
telephony.setSimPowerStateForSlot(slotId, powerUp);
}
} catch (RemoteException e) {
Log.e(TAG, "Error calling ITelephony#setSimPowerStateForSlot", e);
} catch (SecurityException e) {
Log.e(TAG, "Permission error calling ITelephony#setSimPowerStateForSlot", e);
}
}
/**
* Set baseband version for the default phone.
*

View File

@@ -1227,4 +1227,12 @@ interface ITelephony {
* @hide
*/
List<ClientRequestStats> getClientRequestStats(String callingPackage, int subid);
/**
* Set SIM card power state. Request is equivalent to inserting or removing the card.
* @param slotId SIM slot id
* @param powerUp True if powering up the SIM, otherwise powering down
* @hide
* */
void setSimPowerStateForSlot(int slotId, boolean powerUp);
}