pre-provide the mvno data of the edited apn
For mvno, user can add or edit mvno data field. Pre-provide the mvno data of the edited apn when the user selects one of the mvno types. For example if user choose gid, populate the data field with the current sim's gid1 data, or if user choose the SPN option, fill in data with the current carrier string. If IMSI, fill in imsi data. Change-Id: I1bc280054cc7cd37e78a279866cefd62872a19fb
This commit is contained in:
committed by
Robert Greenwalt
parent
358d1825a4
commit
cd1cb16bad
@@ -94,6 +94,7 @@ public class ApnEditor extends PreferenceActivity
|
||||
private boolean mNewApn;
|
||||
private boolean mFirstTime;
|
||||
private Resources mRes;
|
||||
private TelephonyManager mTelephonyManager;
|
||||
|
||||
/**
|
||||
* Standard projection for the interesting columns of a normal note.
|
||||
@@ -224,6 +225,8 @@ public class ApnEditor extends PreferenceActivity
|
||||
mCursor = managedQuery(mUri, sProjection, null, null);
|
||||
mCursor.moveToFirst();
|
||||
|
||||
mTelephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
|
||||
|
||||
fillUi();
|
||||
}
|
||||
|
||||
@@ -359,18 +362,30 @@ public class ApnEditor extends PreferenceActivity
|
||||
}
|
||||
}
|
||||
|
||||
private String mvnoDescription(String raw) {
|
||||
int mvnoIndex = mMvnoType.findIndexOfValue(raw);
|
||||
private String mvnoDescription(String newValue) {
|
||||
int mvnoIndex = mMvnoType.findIndexOfValue(newValue);
|
||||
String oldValue = mMvnoType.getValue();
|
||||
|
||||
if (mvnoIndex == -1) {
|
||||
return null;
|
||||
} else {
|
||||
String[] values = mRes.getStringArray(R.array.mvno_type_entries);
|
||||
if (values[mvnoIndex].equals("None")) {
|
||||
mMvnoMatchData.setEnabled(false);
|
||||
mMvnoMatchData.setText("");
|
||||
} else {
|
||||
mMvnoMatchData.setEnabled(true);
|
||||
}
|
||||
if (newValue != null && newValue.equals(oldValue) == false) {
|
||||
if (values[mvnoIndex].equals("SPN")) {
|
||||
mMvnoMatchData.setText(mTelephonyManager.getSimOperatorName());
|
||||
} else if (values[mvnoIndex].equals("IMSI")) {
|
||||
String numeric =
|
||||
SystemProperties.get(TelephonyProperties.PROPERTY_ICC_OPERATOR_NUMERIC);
|
||||
mMvnoMatchData.setText(numeric + "x");
|
||||
} else if (values[mvnoIndex].equals("GID")) {
|
||||
mMvnoMatchData.setText(mTelephonyManager.getGroupIdLevel1());
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
return values[mvnoIndex];
|
||||
|
Reference in New Issue
Block a user