Add shell command for call composer setting
Add a shell command that can change the user setting for call composer.
adb shell cmd phone callcomposer user-setting [subId] enable|disable|query
Bug: 181045366
Test: manual
Change-Id: Ied2a49e9db1a4ddc893266a971300ced2a4ba054
diff --git a/src/com/android/phone/TelephonyShellCommand.java b/src/com/android/phone/TelephonyShellCommand.java
index 79dfbcf..c294a81 100644
--- a/src/com/android/phone/TelephonyShellCommand.java
+++ b/src/com/android/phone/TelephonyShellCommand.java
@@ -83,6 +83,7 @@
private static final String CALL_COMPOSER_TEST_MODE = "test-mode";
private static final String CALL_COMPOSER_SIMULATE_CALL = "simulate-outgoing-call";
+ private static final String CALL_COMPOSER_USER_SETTING = "user-setting";
private static final String IMS_SET_IMS_SERVICE = "set-ims-service";
private static final String IMS_GET_IMS_SERVICE = "get-ims-service";
@@ -1840,6 +1841,9 @@
pw.println(" callcomposer simulate-outgoing-call [subId] [UUID]");
pw.println(" Simulates an outgoing call being placed with the picture ID as");
pw.println(" the provided UUID. This triggers storage to the call log.");
+ pw.println(" callcomposer user-setting [subId] enable|disable|query");
+ pw.println(" Enables or disables the user setting for call composer, as set by");
+ pw.println(" TelephonyManager#setCallComposerStatus.");
}
private int handleCallComposerCommand() {
@@ -1883,6 +1887,29 @@
}
break;
}
+ case CALL_COMPOSER_USER_SETTING: {
+ try {
+ int subscriptionId = Integer.valueOf(getNextArg());
+ String enabledStr = getNextArg();
+ if (ENABLE.equals(enabledStr)) {
+ mInterface.setCallComposerStatus(subscriptionId,
+ TelephonyManager.CALL_COMPOSER_STATUS_ON);
+ } else if (DISABLE.equals(enabledStr)) {
+ mInterface.setCallComposerStatus(subscriptionId,
+ TelephonyManager.CALL_COMPOSER_STATUS_OFF);
+ } else if (QUERY.equals(enabledStr)) {
+ getOutPrintWriter().println(mInterface.getCallComposerStatus(subscriptionId)
+ == TelephonyManager.CALL_COMPOSER_STATUS_ON);
+ } else {
+ onHelpCallComposer();
+ return 1;
+ }
+ } catch (RemoteException e) {
+ e.printStackTrace(getOutPrintWriter());
+ return 1;
+ }
+ break;
+ }
}
return 0;