OSDN Git Service

LE: Add limited advertising duration capability (3/3)
authorAndre Eisenbach <eisenbach@google.com>
Thu, 7 Aug 2014 22:19:45 +0000 (15:19 -0700)
committerAndre Eisenbach <eisenbach@google.com>
Thu, 7 Aug 2014 22:19:45 +0000 (15:19 -0700)
Change-Id: Ib025d8a10cce07e8f731c005d963245aa988be73

jni/com_android_bluetooth_gatt.cpp
src/com/android/bluetooth/gatt/AdvertiseManager.java

index 57fad29..f12d48e 100644 (file)
@@ -1442,21 +1442,23 @@ static void gattConnectionParameterUpdateNative(JNIEnv *env, jobject object, jin
 }
 
 static void gattClientEnableAdvNative(JNIEnv* env, jobject object, jint client_if,
-       jint min_interval, jint max_interval, jint adv_type, jint chnl_map, jint tx_power)
+       jint min_interval, jint max_interval, jint adv_type, jint chnl_map, jint tx_power,
+       jint timeout_s)
 {
     if (!sGattIf) return;
 
     sGattIf->client->multi_adv_enable(client_if, min_interval, max_interval, adv_type, chnl_map,
-        tx_power);
+        tx_power, timeout_s);
 }
 
 static void gattClientUpdateAdvNative(JNIEnv* env, jobject object, jint client_if,
-       jint min_interval, jint max_interval, jint adv_type, jint chnl_map, jint tx_power)
+       jint min_interval, jint max_interval, jint adv_type, jint chnl_map, jint tx_power,
+       jint timeout_s)
 {
     if (!sGattIf) return;
 
     sGattIf->client->multi_adv_update(client_if, min_interval, max_interval, adv_type, chnl_map,
-        tx_power);
+        tx_power, timeout_s);
 }
 
 static void gattClientSetAdvDataNative(JNIEnv* env, jobject object , jint client_if,
@@ -1711,8 +1713,8 @@ static void gattTestNative(JNIEnv *env, jobject object, jint command,
 
 // JNI functions defined in AdvertiseManager class.
 static JNINativeMethod sAdvertiseMethods[] = {
-    {"gattClientEnableAdvNative", "(IIIIII)V", (void *) gattClientEnableAdvNative},
-    {"gattClientUpdateAdvNative", "(IIIIII)V", (void *) gattClientUpdateAdvNative},
+    {"gattClientEnableAdvNative", "(IIIIIII)V", (void *) gattClientEnableAdvNative},
+    {"gattClientUpdateAdvNative", "(IIIIIII)V", (void *) gattClientUpdateAdvNative},
     {"gattClientSetAdvDataNative", "(IZZZI[B[B[B)V", (void *) gattClientSetAdvDataNative},
     {"gattClientDisableAdvNative", "(I)V", (void *) gattClientDisableAdvNative},
 };
index 8820a18..b5376d6 100644 (file)
@@ -314,7 +314,8 @@ class AdvertiseManager {
                     minAdvertiseUnit, maxAdvertiseUnit,
                     advertiseEventType,
                     ADVERTISING_CHANNEL_ALL,
-                    txPowerLevel);
+                    txPowerLevel,
+                    client.settings.getTimeout());
         }
 
         private void setAdvertisingData(int clientIf, AdvertiseData data, boolean isScanResponse) {
@@ -402,11 +403,11 @@ class AdvertiseManager {
 
         private native void gattClientEnableAdvNative(int client_if,
                 int min_interval, int max_interval, int adv_type, int chnl_map,
-                int tx_power);
+                int tx_power, int timeout_s);
 
         private native void gattClientUpdateAdvNative(int client_if,
                 int min_interval, int max_interval, int adv_type, int chnl_map,
-                int tx_power);
+                int tx_power, int timeout_s);
 
         private native void gattClientSetAdvDataNative(int client_if,
                 boolean set_scan_rsp, boolean incl_name, boolean incl_txpower, int appearance,