Updated stuff.
Change-Id: If65ed02a9f4ade1adf444e2658414600b32e4956
diff --git a/android-lib/src/main/java/io/v/android/libs/discovery/ble/BlePlugin.java b/android-lib/src/main/java/io/v/android/libs/discovery/ble/BlePlugin.java
index a0bbfd9..1be0483 100644
--- a/android-lib/src/main/java/io/v/android/libs/discovery/ble/BlePlugin.java
+++ b/android-lib/src/main/java/io/v/android/libs/discovery/ble/BlePlugin.java
@@ -4,9 +4,15 @@
package io.v.android.libs.discovery.ble;
+import android.bluetooth.le.AdvertiseCallback;
+import android.bluetooth.le.AdvertiseData;
+import android.bluetooth.le.AdvertiseSettings;
import android.bluetooth.le.BluetoothLeAdvertiser;
+import android.util.Log;
+import java.nio.ByteBuffer;
import java.util.Map;
+import java.util.TreeMap;
import java.util.UUID;
import io.v.v23.discovery.Service;
@@ -21,7 +27,31 @@
private BluetoothLeAdvertiser mBluetoothLeAdvertiser;
- private void readvertise() {
+ private void readvertise() {
+ int hash = mAdvertisements.hashCode();
+
+ AdvertiseData.Builder builder = new AdvertiseData.Builder();
+ ByteBuffer buf = ByteBuffer.allocate(9);
+ buf.put((byte) 8);
+ buf.putLong(hash);
+ builder.addManufacturerData(1001, buf.array());
+ AdvertiseSettings.Builder settingsBuilder = new AdvertiseSettings.Builder();
+ settingsBuilder.setAdvertiseMode(AdvertiseSettings.ADVERTISE_MODE_BALANCED);
+ settingsBuilder.setConnectable(true);
+ mBluetoothLeAdvertiser.startAdvertising(settingsBuilder.build(), builder.build(),
+ new AdvertiseCallback() {
+ @Override
+ public void onStartSuccess(AdvertiseSettings settingsInEffect) {
+ super.onStartSuccess(settingsInEffect);
+ Log.i("vanadium", "Successfully started " + settingsInEffect);
+ }
+
+ @Override
+ public void onStartFailure(int errorCode) {
+ super.onStartFailure(errorCode);
+ Log.i("vanadium", "Failed to start advertising " + errorCode);
+ }
+ });
}
}
\ No newline at end of file