微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > 语音信箱设置中如何默认选中我的运营商

语音信箱设置中如何默认选中我的运营商

时间:10-02 整理:3721RD 点击:
[android Version]
Android V2.3 (GB, GB2)
Android V4.0, V4.1 (ICS/ICS2, JB)
Android V4.2 (JB2,JB3,JB5)
Android v4.4
[DESCRIPTION]
默认情况下在语音信箱设置中“我的运营商”是没有被选中的。
[SOLUTION]
android V4.4之前的版本:
在VoiceMailSetting.Java PhoneCallOptionHandlerOP01Extension.java中的函数
onCreate中的第一个
if (icicle == null){ 判断语句内添加
boolean selectDefault = true; //此处也可用一个开关来决定是否开启此功能。
在判断语句
if (ACTION_ADD_VOICEMAIL.equals(getIntent().getAction()) &&
mVoicemailProviders != null)
后添加
else if (selectDefault)
{
if (CallSettings.isMultipleSIM())
{
if (mSimId == Phone.GEMINI_SIM_1)
{
onPreferenceChange(mVoicemailProviders, DEFAULT_VM_PROVIDER_KEY);
mVoicemailProviders.setValue(DEFAULT_VM_PROVIDER_KEY);
}
else
{
onPreferenceChange(mVoicemailProviders, DEFAULT_VM_PROVIDER_KEY2);
mVoicemailProviders.setValue(DEFAULT_VM_PROVIDER_KEY2);
}
}else{
onPreferenceChange(mVoicemailProviders, DEFAULT_VM_PROVIDER_KEY);
mVoicemailProviders.setValue(DEFAULT_VM_PROVIDER_KEY);
}
}
Android V 4.4及之后的版本(红色表示修改的地方):
1.voicemailsetting.java
private void initUIState() {
boolean selectDefaultValue = true; //add by mtk 20140719
mSubMenuVoicemailSettings =
(EditPhoneNumberPreference)mFragment.findPreference(BUTTON_VOICEMAIL_KEY);
if (mSubMenuVoicemailSettings != null) {
mSubMenuVoicemailSettings.setParentActivity(this, VOICEMAIL_PREF_ID,
this);
mSubMenuVoicemailSettings.setDialogOnClosedListener(this);
mSubMenuVoicemailSettings.setDialogTitle(R.string.voicemail_settings_numbe
r_label);
}
......
......
if (ACTION_ADD_VOICEMAIL.equals(getIntent().getAction()) &&
mVoicemailProviders != null) {
if (mVMProvidersData.size() > 1) {
simulatePreferenceCLIck(mVoicemailProviders);
} else {
mFragment.onPreferenceChange(mVoicemailProviders,
DEFAULT_VM_PROVIDER_KEY[mSlotId]);
mVoicemailProviders.setValue(DEFAULT_VM_PROVIDER_KEY[mSlotId]);
}
}else if(selectDefaultValue &&(mVoicemailProviders != null)){
PhoneLog.d(LOG_TAG, "initUIState:mSlotId =" + mSlotId);
mFragment.onPreferenceChange(mVoicemailProviders,
DEFAULT_VM_PROVIDER_KEY[mSlotId]);
mVoicemailProviders.setValue(DEFAULT_VM_PROVIDER_KEY[mSlotId]);
}
mVMProviderSettingsForced = false;
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top