CDMA Settings additions
This patch implement CDMA Settings features 1. Add code to get MEID, MIN, and PRL value if the phone is a CDMA Phone 2. Display MEID, MIN, and PRL on Settings screen if it is a CDMA phone 3. Do not display IMSI, IMEI, and IMEI SV for a CDMA phone
This commit is contained in:
committed by
Wink Saville
parent
d2e3b01390
commit
386278a338
@@ -241,4 +241,18 @@
|
||||
<item>GTC</item>
|
||||
</string-array>
|
||||
|
||||
<!-- Sound settings for emergency tone. -->
|
||||
<string-array name="emergency_tone_entries">
|
||||
<item>Off</item>
|
||||
<item>Alert</item>
|
||||
<item>Vibrate</item>
|
||||
</string-array>
|
||||
|
||||
<!-- Do not translate. -->
|
||||
<string-array name="emergency_tone_values">
|
||||
<item>0</item>
|
||||
<item>1</item>
|
||||
<item>2</item>
|
||||
</string-array>
|
||||
|
||||
</resources>
|
||||
|
@@ -965,7 +965,7 @@
|
||||
<!-- About phone screen, title of the item to go into the Phone status screen -->
|
||||
<string name="device_status">Status</string>
|
||||
<!-- About phone screen, summary of the item to go into the phone status screen -->
|
||||
<string name="device_status_summary">IMEI, phone number, signal, etc.</string>
|
||||
<string name="device_status_summary">Phone number, signal, etc.</string>
|
||||
<!-- Main settings screen item's title to go into the SD card and storage settings screen-->
|
||||
<string name="storage_settings_title">SD card & phone storage</string>
|
||||
<!-- Main settings screen item's summary for the SD card and storage settings -->
|
||||
@@ -975,7 +975,13 @@
|
||||
<!-- Do not translate. About phone, status item title -->
|
||||
<string name="status_imei_sv">IMEI SV</string>
|
||||
<!-- About phone, status item title. The phone number of the current device.-->
|
||||
<string name="status_number">Phone number</string>
|
||||
<string name="status_number">My phone number</string>
|
||||
<!-- About phone, status item title. The phone MIN number of the current device.-->
|
||||
<string name="status_min_number">MIN</string>
|
||||
<!-- About phone, status item title. The phone PRL Version of the current device.-->
|
||||
<string name="status_prl_version">PRL Version</string>
|
||||
<!-- About phone, status item title. The phone MEID number of the current device.-->
|
||||
<string name="status_meid_number">MEID</string>
|
||||
<!-- About phone, status item title for the type of data phone network we're connected to, for example 3G or Edge or GPRS -->
|
||||
<string name="status_network_type">Mobile network type</string>
|
||||
<!-- About phone, status item title. The status of data access. For example, the value may be "Connected" -->
|
||||
@@ -1879,4 +1885,9 @@ found in the list of installed applications.</string>
|
||||
<string name="vpn_settings_category">VPN</string>
|
||||
<string name="vpn_settings_title">VPN</string>
|
||||
<string name="vpn_settings_summary">Set up & manage VPN configurations, connections</string>
|
||||
|
||||
<!-- Sound settings screen, setting check box label -->
|
||||
<string name="emergency_tone_title">Emergency tone</string>
|
||||
<!-- Sound settings screen, setting option summary text -->
|
||||
<string name="emergency_tone_summary">Set behavior when an emergency call is placed</string>
|
||||
</resources>
|
||||
|
@@ -32,6 +32,24 @@
|
||||
android:title="@string/status_number"
|
||||
android:summary="@string/device_info_not_available"
|
||||
android:persistent="false" />
|
||||
<!-- This menu item is only for CDMA phone -->
|
||||
<Preference android:key="min_number"
|
||||
style="?android:attr/preferenceInformationStyle"
|
||||
android:title="@string/status_min_number"
|
||||
android:summary="@string/device_info_not_available"
|
||||
android:persistent="false" />
|
||||
<!-- This menu item is only for CDMA phone -->
|
||||
<Preference android:key="prl_version"
|
||||
style="?android:attr/preferenceInformationStyle"
|
||||
android:title="@string/status_prl_version"
|
||||
android:summary="@string/device_info_not_available"
|
||||
android:persistent="false" />
|
||||
<!-- This menu item is only for CDMA phone -->
|
||||
<Preference android:key="meid_number"
|
||||
style="?android:attr/preferenceInformationStyle"
|
||||
android:title="@string/status_meid_number"
|
||||
android:summary="@string/device_info_not_available"
|
||||
android:persistent="false" />
|
||||
<Preference android:key="operator_name"
|
||||
style="?android:attr/preferenceInformationStyle"
|
||||
android:title="@string/status_operator"
|
||||
|
@@ -94,6 +94,13 @@
|
||||
|
||||
</PreferenceCategory>
|
||||
|
||||
<ListPreference
|
||||
android:key="emergency_tone"
|
||||
android:title="@string/emergency_tone_title"
|
||||
android:summary="@string/emergency_tone_summary"
|
||||
android:entries="@array/emergency_tone_entries"
|
||||
android:entryValues="@array/emergency_tone_values" />
|
||||
|
||||
<PreferenceCategory
|
||||
android:title="@string/display_settings">
|
||||
|
||||
|
@@ -41,6 +41,7 @@ import android.text.method.LinkMovementMethod;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.android.internal.widget.LockPatternUtils;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
import java.util.Observable;
|
||||
import java.util.Observer;
|
||||
@@ -166,18 +167,24 @@ public class SecuritySettings extends PreferenceActivity implements
|
||||
mChoosePattern.setIntent(intent);
|
||||
inlinePrefCat.addPreference(mChoosePattern);
|
||||
|
||||
PreferenceScreen simLockPreferences = getPreferenceManager()
|
||||
.createPreferenceScreen(this);
|
||||
simLockPreferences.setTitle(R.string.sim_lock_settings_category);
|
||||
// Intent to launch SIM lock settings
|
||||
intent = new Intent();
|
||||
intent.setClassName("com.android.settings", "com.android.settings.IccLockSettings");
|
||||
simLockPreferences.setIntent(intent);
|
||||
int activePhoneType = TelephonyManager.getDefault().getPhoneType();
|
||||
|
||||
PreferenceCategory simLockCat = new PreferenceCategory(this);
|
||||
simLockCat.setTitle(R.string.sim_lock_settings_title);
|
||||
root.addPreference(simLockCat);
|
||||
simLockCat.addPreference(simLockPreferences);
|
||||
// do not display SIM lock for CDMA phone
|
||||
if (TelephonyManager.PHONE_TYPE_CDMA != activePhoneType)
|
||||
{
|
||||
PreferenceScreen simLockPreferences = getPreferenceManager()
|
||||
.createPreferenceScreen(this);
|
||||
simLockPreferences.setTitle(R.string.sim_lock_settings_category);
|
||||
// Intent to launch SIM lock settings
|
||||
intent = new Intent();
|
||||
intent.setClassName("com.android.settings", "com.android.settings.IccLockSettings");
|
||||
simLockPreferences.setIntent(intent);
|
||||
|
||||
PreferenceCategory simLockCat = new PreferenceCategory(this);
|
||||
simLockCat.setTitle(R.string.sim_lock_settings_title);
|
||||
root.addPreference(simLockCat);
|
||||
simLockCat.addPreference(simLockPreferences);
|
||||
}
|
||||
|
||||
// Passwords
|
||||
PreferenceCategory passwordsCat = new PreferenceCategory(this);
|
||||
|
@@ -37,6 +37,7 @@ import android.preference.CheckBoxPreference;
|
||||
import android.provider.Settings;
|
||||
import android.util.Log;
|
||||
import android.view.IWindowManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
public class SoundAndDisplaySettings extends PreferenceActivity implements
|
||||
Preference.OnPreferenceChangeListener {
|
||||
@@ -44,6 +45,7 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
|
||||
|
||||
/** If there is no setting in the provider, use this. */
|
||||
private static final int FALLBACK_SCREEN_TIMEOUT_VALUE = 30000;
|
||||
private static final int FALLBACK_EMERGENCY_TONE_VALUE = 0;
|
||||
|
||||
private static final String KEY_SILENT = "silent";
|
||||
private static final String KEY_VIBRATE = "vibrate";
|
||||
@@ -54,6 +56,7 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
|
||||
private static final String KEY_ACCELEROMETER = "accelerometer";
|
||||
private static final String KEY_PLAY_MEDIA_NOTIFICATION_SOUNDS = "play_media_notification_sounds";
|
||||
private static final String KEY_COMPATIBILITY_MODE = "compatibility_mode";
|
||||
private static final String KEY_EMERGENCY_TONE ="emergency_tone";
|
||||
|
||||
private CheckBoxPreference mSilent;
|
||||
|
||||
@@ -91,6 +94,7 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
ContentResolver resolver = getContentResolver();
|
||||
int activePhoneType = TelephonyManager.getDefault().getPhoneType();
|
||||
|
||||
mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
|
||||
mWindowManager = IWindowManager.Stub.asInterface(ServiceManager.getService("window"));
|
||||
@@ -99,6 +103,11 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
|
||||
|
||||
addPreferencesFromResource(R.xml.sound_and_display_settings);
|
||||
|
||||
if (TelephonyManager.PHONE_TYPE_CDMA != activePhoneType) {
|
||||
// device is not CDMA, do not display CDMA emergency_tone
|
||||
getPreferenceScreen().removePreference(findPreference(KEY_EMERGENCY_TONE));
|
||||
}
|
||||
|
||||
mSilent = (CheckBoxPreference) findPreference(KEY_SILENT);
|
||||
mPlayMediaNotificationSounds = (CheckBoxPreference) findPreference(KEY_PLAY_MEDIA_NOTIFICATION_SOUNDS);
|
||||
|
||||
@@ -125,6 +134,14 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
|
||||
screenTimeoutPreference.setValue(String.valueOf(Settings.System.getInt(
|
||||
resolver, SCREEN_OFF_TIMEOUT, FALLBACK_SCREEN_TIMEOUT_VALUE)));
|
||||
screenTimeoutPreference.setOnPreferenceChangeListener(this);
|
||||
|
||||
if (TelephonyManager.PHONE_TYPE_CDMA == activePhoneType) {
|
||||
ListPreference emergencyTonePreference =
|
||||
(ListPreference) findPreference(KEY_EMERGENCY_TONE);
|
||||
emergencyTonePreference.setValue(String.valueOf(Settings.System.getInt(
|
||||
resolver, Settings.System.EMERGENCY_TONE, FALLBACK_EMERGENCY_TONE_VALUE)));
|
||||
emergencyTonePreference.setOnPreferenceChangeListener(this);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -273,6 +290,14 @@ public class SoundAndDisplaySettings extends PreferenceActivity implements
|
||||
} catch (NumberFormatException e) {
|
||||
Log.e(TAG, "could not persist screen timeout setting", e);
|
||||
}
|
||||
} else if (KEY_EMERGENCY_TONE.equals(preference.getKey())) {
|
||||
int value = Integer.parseInt((String) objValue);
|
||||
try {
|
||||
Settings.System.putInt(getContentResolver(),
|
||||
Settings.System.EMERGENCY_TONE, value);
|
||||
} catch (NumberFormatException e) {
|
||||
Log.e(TAG, "could not persist emergency tone setting", e);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@@ -182,11 +182,27 @@ public class Status extends PreferenceActivity {
|
||||
mUptime = findPreference("up_time");
|
||||
|
||||
//NOTE "imei" is the "Device ID" since it represents the IMEI in GSM and the MEID in CDMA
|
||||
setSummaryText("imei", mPhone.getDeviceId());
|
||||
if (mPhone.getPhoneName().equals("CDMA")) {
|
||||
setSummaryText("meid_number", mPhone.getMeid());
|
||||
setSummaryText("min_number", mPhone.getCdmaMin());
|
||||
setSummaryText("prl_version", mPhone.getCdmaPrlVersion());
|
||||
|
||||
setSummaryText("imei_sv",
|
||||
((TelephonyManager) getSystemService(TELEPHONY_SERVICE))
|
||||
// device is not GSM/UMTS, do not display GSM/UMTS features
|
||||
getPreferenceScreen().removePreference(findPreference("imei"));
|
||||
getPreferenceScreen().removePreference(findPreference("imei_sv"));
|
||||
} else {
|
||||
setSummaryText("imei", mPhone.getDeviceId());
|
||||
|
||||
setSummaryText("imei_sv",
|
||||
((TelephonyManager) getSystemService(TELEPHONY_SERVICE))
|
||||
.getDeviceSoftwareVersion());
|
||||
|
||||
// device is not CDMA, do not display CDMA features
|
||||
getPreferenceScreen().removePreference(findPreference("prl_version"));
|
||||
getPreferenceScreen().removePreference(findPreference("meid_number"));
|
||||
getPreferenceScreen().removePreference(findPreference("min_number"));
|
||||
}
|
||||
|
||||
setSummaryText("number", mPhone.getLine1Number());
|
||||
|
||||
mPhoneStateReceiver = new PhoneStateIntentReceiver(this, mHandler);
|
||||
|
Reference in New Issue
Block a user