Merge "Migrated search for SubInfoRecord to Utils." into lmp-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
5aafdda85c
@@ -60,6 +60,8 @@ import android.provider.ContactsContract.Data;
|
|||||||
import android.provider.ContactsContract.Profile;
|
import android.provider.ContactsContract.Profile;
|
||||||
import android.provider.ContactsContract.RawContacts;
|
import android.provider.ContactsContract.RawContacts;
|
||||||
import android.service.persistentdata.PersistentDataBlockManager;
|
import android.service.persistentdata.PersistentDataBlockManager;
|
||||||
|
import android.telephony.SubInfoRecord;
|
||||||
|
import android.telephony.SubscriptionManager;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
@@ -981,4 +983,42 @@ public final class Utils {
|
|||||||
}
|
}
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* finds a record with subId.
|
||||||
|
* Since the number of SIMs are few, an array is fine.
|
||||||
|
*/
|
||||||
|
public static SubInfoRecord findRecordBySubId(final int subId) {
|
||||||
|
final List<SubInfoRecord> subInfoList = SubscriptionManager.getActiveSubInfoList();
|
||||||
|
final int subInfoLength = subInfoList.size();
|
||||||
|
|
||||||
|
for (int i = 0; i < subInfoLength; ++i) {
|
||||||
|
final SubInfoRecord sir = subInfoList.get(i);
|
||||||
|
if (sir != null && sir.getSubscriptionId() == subId) {
|
||||||
|
return sir;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* finds a record with slotId.
|
||||||
|
* Since the number of SIMs are few, an array is fine.
|
||||||
|
*/
|
||||||
|
public static SubInfoRecord findRecordBySlotId(final int slotId) {
|
||||||
|
final List<SubInfoRecord> subInfoList = SubscriptionManager.getActiveSubInfoList();
|
||||||
|
final int subInfoLength = subInfoList.size();
|
||||||
|
|
||||||
|
for (int i = 0; i < subInfoLength; ++i) {
|
||||||
|
final SubInfoRecord sir = subInfoList.get(i);
|
||||||
|
if (sir.getSimSlotIndex() == slotId) {
|
||||||
|
//Right now we take the first subscription on a SIM.
|
||||||
|
return sir;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -145,7 +145,7 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
|
|||||||
mSelectableSubInfos = new ArrayList<SubInfoRecord>();
|
mSelectableSubInfos = new ArrayList<SubInfoRecord>();
|
||||||
mNumSims = 0;
|
mNumSims = 0;
|
||||||
for (int i = 0; i < numSlots; ++i) {
|
for (int i = 0; i < numSlots; ++i) {
|
||||||
final SubInfoRecord sir = findRecordBySlotId(i);
|
final SubInfoRecord sir = Utils.findRecordBySlotId(i);
|
||||||
mSimCards.addPreference(new SimPreference(getActivity(), sir, i));
|
mSimCards.addPreference(new SimPreference(getActivity(), sir, i));
|
||||||
mAvailableSubInfos.add(sir);
|
mAvailableSubInfos.add(sir);
|
||||||
if (sir != null) {
|
if (sir != null) {
|
||||||
@@ -165,7 +165,7 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
|
|||||||
mNumSims = 0;
|
mNumSims = 0;
|
||||||
mAvailableSubInfos = new ArrayList<SubInfoRecord>(numSlots);
|
mAvailableSubInfos = new ArrayList<SubInfoRecord>(numSlots);
|
||||||
for (int i = 0; i < numSlots; ++i) {
|
for (int i = 0; i < numSlots; ++i) {
|
||||||
final SubInfoRecord sir = findRecordBySlotId(i);
|
final SubInfoRecord sir = Utils.findRecordBySlotId(i);
|
||||||
mAvailableSubInfos.add(sir);
|
mAvailableSubInfos.add(sir);
|
||||||
if (sir != null) {
|
if (sir != null) {
|
||||||
mNumSims++;
|
mNumSims++;
|
||||||
@@ -196,46 +196,9 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
|
|||||||
updateSmsValues();
|
updateSmsValues();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* finds a record with subId.
|
|
||||||
* Since the number of SIMs are few, an array is fine.
|
|
||||||
*/
|
|
||||||
private SubInfoRecord findRecordBySubId(final int subId) {
|
|
||||||
final int availableSubInfoLength = mAvailableSubInfos.size();
|
|
||||||
|
|
||||||
for (int i = 0; i < availableSubInfoLength; ++i) {
|
|
||||||
final SubInfoRecord sir = mAvailableSubInfos.get(i);
|
|
||||||
if (sir != null && sir.getSubscriptionId() == subId) {
|
|
||||||
return sir;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* finds a record with slotId.
|
|
||||||
* Since the number of SIMs are few, an array is fine.
|
|
||||||
*/
|
|
||||||
private SubInfoRecord findRecordBySlotId(final int slotId) {
|
|
||||||
if (mSubInfoList != null){
|
|
||||||
final int availableSubInfoLength = mSubInfoList.size();
|
|
||||||
|
|
||||||
for (int i = 0; i < availableSubInfoLength; ++i) {
|
|
||||||
final SubInfoRecord sir = mSubInfoList.get(i);
|
|
||||||
if (sir.getSimSlotIndex() == slotId) {
|
|
||||||
//Right now we take the first subscription on a SIM.
|
|
||||||
return sir;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void updateSmsValues() {
|
private void updateSmsValues() {
|
||||||
final Preference simPref = (Preference) findPreference(KEY_SMS);
|
final Preference simPref = (Preference) findPreference(KEY_SMS);
|
||||||
final SubInfoRecord sir = findRecordBySubId(SubscriptionManager.getDefaultSmsSubId());
|
final SubInfoRecord sir = Utils.findRecordBySubId(SubscriptionManager.getDefaultSmsSubId());
|
||||||
simPref.setTitle(R.string.sms_messages_title);
|
simPref.setTitle(R.string.sms_messages_title);
|
||||||
if (mSubInfoList.size() == 1) {
|
if (mSubInfoList.size() == 1) {
|
||||||
simPref.setSummary(mSubInfoList.get(0).getDisplayName());
|
simPref.setSummary(mSubInfoList.get(0).getDisplayName());
|
||||||
@@ -249,7 +212,7 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
|
|||||||
|
|
||||||
private void updateCellularDataValues() {
|
private void updateCellularDataValues() {
|
||||||
final Preference simPref = findPreference(KEY_CELLULAR_DATA);
|
final Preference simPref = findPreference(KEY_CELLULAR_DATA);
|
||||||
final SubInfoRecord sir = findRecordBySubId(SubscriptionManager.getDefaultDataSubId());
|
final SubInfoRecord sir = Utils.findRecordBySubId(SubscriptionManager.getDefaultDataSubId());
|
||||||
simPref.setTitle(R.string.cellular_data_title);
|
simPref.setTitle(R.string.cellular_data_title);
|
||||||
if (mSubInfoList.size() == 1) {
|
if (mSubInfoList.size() == 1) {
|
||||||
simPref.setSummary(mSubInfoList.get(0).getDisplayName());
|
simPref.setSummary(mSubInfoList.get(0).getDisplayName());
|
||||||
@@ -535,14 +498,14 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
|
|||||||
mSubInfoRecord.setDisplayName(displayName);
|
mSubInfoRecord.setDisplayName(displayName);
|
||||||
SubscriptionManager.setDisplayName(displayName, subId,
|
SubscriptionManager.setDisplayName(displayName, subId,
|
||||||
SubscriptionManager.NAME_SOURCE_USER_INPUT);
|
SubscriptionManager.NAME_SOURCE_USER_INPUT);
|
||||||
findRecordBySubId(subId).setDisplayName(displayName);
|
Utils.findRecordBySubId(subId).setDisplayName(displayName);
|
||||||
|
|
||||||
final int colorSelected = colorSpinner.getSelectedItemPosition();
|
final int colorSelected = colorSpinner.getSelectedItemPosition();
|
||||||
int subscriptionId = mSubInfoRecord.getSubscriptionId();
|
int subscriptionId = mSubInfoRecord.getSubscriptionId();
|
||||||
int color = colorArr[colorSelected];
|
int color = colorArr[colorSelected];
|
||||||
mSubInfoRecord.setColor(color);
|
mSubInfoRecord.setColor(color);
|
||||||
SubscriptionManager.setColor(color, subscriptionId);
|
SubscriptionManager.setColor(color, subscriptionId);
|
||||||
findRecordBySubId(subscriptionId).setColor(color);
|
Utils.findRecordBySubId(subscriptionId).setColor(color);
|
||||||
|
|
||||||
updateAllOptions();
|
updateAllOptions();
|
||||||
update();
|
update();
|
||||||
|
Reference in New Issue
Block a user