Make rerouting audio to speaker when docked configurable.

Bug: 25485578
Change-Id: Ie2a04e9d96b9c1e3d8167679a1137b65bdad3379
diff --git a/res/values/config.xml b/res/values/config.xml
index e474d7e..af8cb52 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -42,4 +42,7 @@
     <!-- Component name for the notification handler. The presence of this value will disable
          MissedCallNotifierImpl's presentation of missed call/voice notifications [DO NOT TRANSLATE] -->
     <string name="notification_component" translatable="false"></string>
+
+    <!-- Flag indicating whether audio should be routed to speaker when docked -->
+    <bool name="use_speaker_when_docked">true</bool>
 </resources>
diff --git a/src/com/android/server/telecom/CallsManager.java b/src/com/android/server/telecom/CallsManager.java
index f3676e4..7204469 100644
--- a/src/com/android/server/telecom/CallsManager.java
+++ b/src/com/android/server/telecom/CallsManager.java
@@ -712,7 +712,12 @@
         } else {
             Log.i(this, "%s Starting with speakerphone because car is docked.", call);
         }
-        call.setStartWithSpeakerphoneOn(speakerphoneOn || mDockManager.isDocked());
+
+        final boolean useSpeakerWhenDocked = mContext.getResources().getBoolean(
+                R.bool.use_speaker_when_docked);
+
+        call.setStartWithSpeakerphoneOn(speakerphoneOn
+                || (useSpeakerWhenDocked && mDockManager.isDocked()));
 
         if (call.isEmergencyCall()) {
             // Emergency -- CreateConnectionProcessor will choose accounts automatically