Read connection intervals from config.xml so it can be overriden by device.

Wear needs the minimum possible connection interval for BLE connections
to support the Wear iOS companion app. This change simply moves the hard-
coded connection intervals to config.xml so they can be overriden for
Wear devices.

Bug: 23903184
Change-Id: I1f60772ef6a100ad5e4f02f629b5ca6e80fc207a
diff --git a/res/values/config.xml b/res/values/config.xml
index 1684183..79fe9ce 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -33,4 +33,12 @@
          fire Bluetooth LE scan result callbacks in addition to having one
          of the location permissions. -->
     <bool name="strict_location_check">true</bool>
+
+    <!-- Specifies the min/max connection interval parameters for high priority
+         and low power GATT configurations. These values are in multiples of
+         1.25ms. -->
+    <integer name="gatt_high_priority_min_interval">9</integer>
+    <integer name="gatt_high_priority_max_interval">12</integer>
+    <integer name="gatt_low_power_min_interval">80</integer>
+    <integer name="gatt_low_power_max_interval">100</integer>
 </resources>
diff --git a/src/com/android/bluetooth/gatt/GattService.java b/src/com/android/bluetooth/gatt/GattService.java
index a04d5a3..a5fdfea 100644
--- a/src/com/android/bluetooth/gatt/GattService.java
+++ b/src/com/android/bluetooth/gatt/GattService.java
@@ -1673,13 +1673,13 @@
         switch (connectionPriority)
         {
             case BluetoothGatt.CONNECTION_PRIORITY_HIGH:
-                minInterval = 9; // 11.25ms
-                maxInterval = 12; // 15ms
+                minInterval = getResources().getInteger(R.integer.gatt_high_priority_min_interval);
+                maxInterval = getResources().getInteger(R.integer.gatt_high_priority_max_interval);
                 break;
 
             case BluetoothGatt.CONNECTION_PRIORITY_LOW_POWER:
-                minInterval = 80; // 100ms
-                maxInterval = 100; // 125ms
+                minInterval = getResources().getInteger(R.integer.gatt_low_power_min_interval);
+                maxInterval = getResources().getInteger(R.integer.gatt_low_power_max_interval);
                 latency = 2;
                 break;
         }