aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHall Liu <hallliu@google.com>2018-02-16 00:35:49 +0000
committerandroid-build-merger <android-build-merger@google.com>2018-02-16 00:35:49 +0000
commit0dfbcc73738131eafa07aca3d1b177c614d43240 (patch)
tree875d6438394c06f2086f4a6b1cf7489ca8caedd5
parent25c986c76831a68da52764b4d1f6347aefee928a (diff)
parent27fc8424127a3251dee570c52767f6e08d5aa24d (diff)
downloadims-0dfbcc73738131eafa07aca3d1b177c614d43240.tar.gz
RTT bugfixes and logging
am: 27fc842412 Change-Id: I635bfd610892558b48b0348d4db6649a4ffba0b6
-rw-r--r--src/java/com/android/ims/ImsCall.java3
-rw-r--r--src/java/com/android/ims/ImsManager.java22
2 files changed, 25 insertions, 0 deletions
diff --git a/src/java/com/android/ims/ImsCall.java b/src/java/com/android/ims/ImsCall.java
index 5fceb7af..1d728a1a 100644
--- a/src/java/com/android/ims/ImsCall.java
+++ b/src/java/com/android/ims/ImsCall.java
@@ -1652,6 +1652,7 @@ public class ImsCall implements ICall {
// Make a copy of the current ImsCallProfile and modify it to enable RTT
Parcel p = Parcel.obtain();
mCallProfile.writeToParcel(p, 0);
+ p.setDataPosition(0);
ImsCallProfile requestedProfile = new ImsCallProfile(p);
requestedProfile.mMediaProfile.setRttMode(ImsStreamMediaProfile.RTT_MODE_FULL);
@@ -3101,6 +3102,7 @@ public class ImsCall implements ICall {
public void callSessionRttModifyRequestReceived(ImsCallSession session,
ImsCallProfile callProfile) {
ImsCall.Listener listener;
+ logi("callSessionRttModifyRequestReceived");
synchronized(ImsCall.this) {
listener = mListener;
@@ -3125,6 +3127,7 @@ public class ImsCall implements ICall {
public void callSessionRttModifyResponseReceived(int status) {
ImsCall.Listener listener;
+ logi("callSessionRttModifyResponseReceived");
synchronized(ImsCall.this) {
listener = mListener;
}
diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java
index ad8d11b2..6fc12920 100644
--- a/src/java/com/android/ims/ImsManager.java
+++ b/src/java/com/android/ims/ImsManager.java
@@ -1635,6 +1635,28 @@ public class ImsManager {
}
}
+ public void setRttEnabled(boolean enabled) {
+ try {
+ setAdvanced4GMode(enabled || isEnhanced4gLteModeSettingEnabledByUser());
+ final int value = enabled ? ImsConfig.FeatureValueConstants.ON :
+ ImsConfig.FeatureValueConstants.OFF;
+ Thread thread = new Thread(() -> {
+ try {
+ Log.i(ImsManager.class.getSimpleName(), "Setting RTT enabled to " + enabled);
+ getConfigInterface().setProvisionedValue(
+ ImsConfig.ConfigConstants.RTT_SETTING_ENABLED, value);
+ } catch (ImsException e) {
+ Log.e(ImsManager.class.getSimpleName(), "Unable to set RTT enabled to "
+ + enabled + ": " + e);
+ }
+ });
+ thread.start();
+ } catch (ImsException e) {
+ Log.e(ImsManager.class.getSimpleName(), "Unable to set RTT enabled to " + enabled
+ + ": " + e);
+ }
+ }
+
/**
* Set the TTY mode. This is the actual tty mode (varies depending on peripheral status)
*/