Merge "[Telephony Mainline] Add new api for Mvno matching"

am: 2d83e92bbd

Change-Id: I8a688133c3c7c1c5e7a8a984fa49e3ad273ad2e0
This commit is contained in:
Calvin Pan
2020-01-13 09:02:40 -08:00
committed by android-build-merger
3 changed files with 35 additions and 0 deletions

View File

@@ -9178,6 +9178,7 @@ package android.telephony {
method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String);
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn();
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int);
method public boolean isCurrentSimOperator(@NonNull String, int, @Nullable String);
method public boolean isDataConnectivityPossible();
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int);
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled();

View File

@@ -79,6 +79,7 @@ import android.telephony.Annotation.SimActivationState;
import android.telephony.Annotation.UiccAppType;
import android.telephony.VisualVoicemailService.VisualVoicemailTask;
import android.telephony.data.ApnSetting;
import android.telephony.data.ApnSetting.MvnoType;
import android.telephony.emergency.EmergencyNumber;
import android.telephony.emergency.EmergencyNumber.EmergencyServiceCategories;
import android.telephony.ims.ImsMmTelManager;
@@ -11904,6 +11905,37 @@ public class TelephonyManager {
return true;
}
/**
* Verifies whether the input MCC/MNC and MVNO correspond to the current carrier.
*
* @param mccmnc the carrier's mccmnc that you want to match
* @param mvnoType the mvnoType that defined in {@link ApnSetting}
* @param mvnoMatchData the MVNO match data
* @return {@code true} if input mccmnc and mvno matches with data from sim operator.
* {@code false} otherwise.
*
* {@hide}
*/
@SystemApi
public boolean isCurrentSimOperator(@NonNull String mccmnc, @MvnoType int mvnoType,
@Nullable String mvnoMatchData) {
try {
if (!mccmnc.equals(getSimOperator())) {
Log.d(TAG, "The mccmnc does not match");
return false;
}
ITelephony service = getITelephony();
if (service != null) {
return service.isMvnoMatched(getSubId(), mvnoType, mvnoMatchData);
}
} catch (RemoteException ex) {
if (!isSystemProcess()) {
ex.rethrowAsRuntimeException();
}
}
return false;
}
/**
* Set allowing mobile data during voice call.
*

View File

@@ -2088,6 +2088,8 @@ interface ITelephony {
boolean isApnMetered(int apnType, int subId);
boolean isMvnoMatched(int subId, int mvnoType, String mvnoMatchData);
/**
* Enqueue a pending sms Consumer, which will answer with the user specified selection for an
* outgoing SmsManager operation.