resolved conflicts for merge of 23682809 to lmp-mr1-dev-plus-aosp

Change-Id: Ia6ad086dad93e5230ec59287d96e736e8d785320
This commit is contained in:
Pavel Zhamaitsiak
2015-01-28 13:07:57 -08:00
4 changed files with 66 additions and 1 deletions

View File

@@ -1,7 +1,7 @@
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_JAVA_LIBRARIES := bouncycastle conscrypt telephony-common
LOCAL_JAVA_LIBRARIES := bouncycastle conscrypt telephony-common ims-common
LOCAL_STATIC_JAVA_LIBRARIES := android-support-v4 android-support-v13 jsr305
LOCAL_MODULE_TAGS := optional

View File

@@ -226,6 +226,14 @@
android:layout_height="wrap_content"
/>
<!-- VoLTE provisioned -->
<Button android:id="@+id/volte_provisioned_flag"
android:textSize="14sp"
android:layout_marginTop="8dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<!-- SMS over IMS -->
<Button android:id="@+id/sms_over_ims"
android:textSize="14sp"

View File

@@ -72,6 +72,11 @@
<!-- Phone IMS registration required off. Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="ims_reg_required_off">Turn off IMS registration required</string>
<!-- VoLTE provisioning flag on. Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="volte_provisioned_flag_on">Turn on VoLTE provisioned flag</string>
<!-- VoLTE provisioning flag off. Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="volte_provisioned_flag_off">Turn off VoLTE provisioned flag</string>
<!-- Phone ram dump on. Only shown in diagnostic screen, so precise translation is not needed. -->
<string name="lte_ram_dump_on">Turn on lte ram dump</string>
<!-- Phone ram dump off. Only shown in diagnostic screen, so precise translation is not needed. -->

View File

@@ -17,6 +17,7 @@
package com.android.settings;
import android.app.Activity;
import android.app.QueuedWork;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
@@ -54,6 +55,9 @@ import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.PhoneFactory;
import com.android.internal.telephony.PhoneStateIntentReceiver;
import com.android.internal.telephony.TelephonyProperties;
import com.android.ims.ImsConfig;
import com.android.ims.ImsException;
import com.android.ims.ImsManager;
import java.net.HttpURLConnection;
import java.net.URL;
@@ -192,6 +196,7 @@ public class RadioInfo extends Activity {
case EVENT_SERVICE_STATE_CHANGED:
updateServiceState();
updatePowerState();
updateImsVoLteProvisionedState();
break;
case EVENT_QUERY_PREFERRED_TYPE_DONE:
@@ -300,6 +305,9 @@ public class RadioInfo extends Activity {
imsRegRequiredButton = (Button) findViewById(R.id.ims_reg_required);
imsRegRequiredButton.setOnClickListener(mImsRegRequiredHandler);
imsVoLteProvisionedButton = (Button) findViewById(R.id.volte_provisioned_flag);
imsVoLteProvisionedButton.setOnClickListener(mImsVoLteProvisionedHandler);
smsOverImsButton = (Button) findViewById(R.id.sms_over_ims);
smsOverImsButton.setOnClickListener(mSmsOverImsHandler);
@@ -357,6 +365,7 @@ public class RadioInfo extends Activity {
updatePowerState();
updateCellInfoListRate();
updateImsRegRequiredState();
updateImsVoLteProvisionedState();
updateSmsOverImsState();
updateLteRamDumpState();
updateProperties();
@@ -1003,6 +1012,49 @@ public class RadioInfo extends Activity {
return SystemProperties.getBoolean(PROPERTY_SMS_OVER_IMS, false);
}
private Button imsVoLteProvisionedButton;
OnClickListener mImsVoLteProvisionedHandler = new OnClickListener() {
@Override
public void onClick(View v) {
log(String.format("toggle VoLTE provisioned: currently %s",
(isImsVoLteProvisioned() ? "on":"off")));
final boolean newValue = !isImsVoLteProvisioned();
if (phone != null) {
final ImsManager imsManager = ImsManager.getInstance(phone.getContext(), phone.getSubId());
if (imsManager != null) {
QueuedWork.singleThreadExecutor().submit(new Runnable() {
public void run() {
try {
imsManager.getConfigInterface().setProvisionedValue(
ImsConfig.ConfigConstants.VLT_SETTING_ENABLED,
newValue? 1 : 0);
} catch (ImsException e) {
Log.e(TAG, "setImsVoLteProvisioned() exception:", e);
}
}
});
}
}
updateImsVoLteProvisionedState();
}
};
private boolean isImsVoLteProvisioned() {
if (phone != null) {
ImsManager imsManager = ImsManager.getInstance(phone.getContext(), phone.getSubId());
return imsManager.isVolteProvisionedOnDevice(phone.getContext());
}
return false;
}
private void updateImsVoLteProvisionedState() {
log("updateImsVoLteProvisionedState isImsVoLteProvisioned()=" + isImsVoLteProvisioned());
String buttonText = isImsVoLteProvisioned() ?
getString(R.string.volte_provisioned_flag_off) :
getString(R.string.volte_provisioned_flag_on);
imsVoLteProvisionedButton.setText(buttonText);
}
private void updateSmsOverImsState() {
log("updateSmsOverImsState isSmsOverImsEnabled()=" + isSmsOverImsEnabled());
String buttonText = isSmsOverImsEnabled() ?