List of usage examples for android.bluetooth BluetoothGattCharacteristic BluetoothGattCharacteristic
public BluetoothGattCharacteristic(UUID uuid, int properties, int permissions)
From source file:com.example.emulator.EmulatorFragment.java
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) public EmulatorFragment() { mBatteryLevelCharacteristic = new BluetoothGattCharacteristic(BATTERY_LEVEL_UUID, BluetoothGattCharacteristic.PROPERTY_READ | BluetoothGattCharacteristic.PROPERTY_NOTIFY, BluetoothGattCharacteristic.PERMISSION_READ); mBatteryLevelCharacteristic.addDescriptor(Peripheral.getClientCharacteristicConfigurationDescriptor()); mBatteryLevelCharacteristic//from w w w .jav a2s .co m .addDescriptor(Peripheral.getCharacteristicUserDescriptionDescriptor(BATTERY_LEVEL_DESCRIPTION)); mBatteryService = new BluetoothGattService(BATTERY_SERVICE_UUID, BluetoothGattService.SERVICE_TYPE_PRIMARY); mBatteryService.addCharacteristic(mBatteryLevelCharacteristic); }
From source file:io.v.android.impl.google.discovery.plugins.ble.Driver.java
public void addService(final String uuid, Map<String, byte[]> characteristics) { BluetoothGattService service = new BluetoothGattService(UUID.fromString(uuid), BluetoothGattService.SERVICE_TYPE_PRIMARY); for (Map.Entry<String, byte[]> entry : characteristics.entrySet()) { BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic( UUID.fromString(entry.getKey()), BluetoothGattCharacteristic.PROPERTY_READ, BluetoothGattCharacteristic.PERMISSION_READ); characteristic.setValue(entry.getValue()); service.addCharacteristic(characteristic); }//from ww w. j ava 2 s. c om synchronized (this) { if (mServices.put(uuid, service) != null) { throw new IllegalStateException("already being advertised: " + uuid); } if (mEnabled) { startAdvertising(service); } } }
From source file:io.v.android.libs.discovery.ble.BlePlugin.java
private BluetoothGattService convertToService(Advertisement adv) throws IOException { Map<UUID, byte[]> attributes = BleAdvertisementConverter.vAdvertismentToBleAttr(adv); BluetoothGattService service = new BluetoothGattService(UUIDUtil.UuidToUUID(adv.getServiceUuid()), BluetoothGattService.SERVICE_TYPE_PRIMARY); for (Map.Entry<UUID, byte[]> entry : attributes.entrySet()) { BluetoothGattCharacteristic ch = new BluetoothGattCharacteristic(entry.getKey(), 0, BluetoothGattCharacteristic.PERMISSION_READ); ch.setValue(entry.getValue());/*from ww w. j a va 2 s .c om*/ service.addCharacteristic(ch); } return service; }
From source file:org.physical_web.physicalweb.FatBeaconBroadcastService.java
private void initGattServer() { mGattServer = mBluetoothManager.openGattServer(this, mGattServerCallback); BluetoothGattService service = new BluetoothGattService(UUID.fromString(SERVICE_UUID), BluetoothGattService.SERVICE_TYPE_PRIMARY); BluetoothGattCharacteristic webpage = new BluetoothGattCharacteristic(CHARACTERISTIC_WEBPAGE_UUID, BluetoothGattCharacteristic.PROPERTY_READ, BluetoothGattCharacteristic.PERMISSION_READ); service.addCharacteristic(webpage);/*from ww w . ja v a 2 s .c o m*/ mGattServer.addService(service); }
From source file:org.bcsphere.bluetooth.BluetoothG43plus.java
@Override public void addServices(JSONArray json, CallbackContext callbackContext) { Log.i(TAG, "addServices"); if (!isOpenGattServer) { mBluetoothGattServer = mBluetoothManager.openGattServer(mContext, mGattServerCallback); isOpenGattServer = true;//from w ww.j av a 2 s .c om } addServiceCC = callbackContext; JSONArray services = Tools.getArray(json, Tools.SERVICES); gattServerSum = services.length(); for (int i = 0; i < services.length(); i++) { String uniqueID = Tools.getData(services, i, Tools.UINQUE_ID); int serviceType = -1; if (Tools.getData(services, i, Tools.SERVICE_TYPE).equals("0")) { serviceType = BluetoothGattService.SERVICE_TYPE_PRIMARY; } else { serviceType = BluetoothGattService.SERVICE_TYPE_SECONDARY; } UUID serviceUUID = UUID.fromString(Tools.getData(services, i, Tools.SERVICE_UUID)); BluetoothGattService service = new BluetoothGattService(serviceUUID, serviceType); JSONArray characteristics = Tools.getArray(services, i, Tools.CHARACTERISTICS); for (int j = 0; j < characteristics.length(); j++) { byte[] characteristicValue = Tools .decodeBase64(Tools.getData(characteristics, Tools.CHARACTERISTIC_VALUE)); UUID characteristicUUID = UUID .fromString(Tools.getData(characteristics, Tools.CHARACTERISTIC_UUID)); int characteristicProperty = Tools .encodeProperty(Tools.getArray(characteristics, Tools.CHARACTERISTIC_PROPERTY)); int characteristicPermission = Tools .encodePermission(Tools.getArray(characteristics, Tools.CHARACTERISTIC_PERMISSION)); BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic(characteristicUUID, characteristicProperty, characteristicPermission); characteristic.setValue(characteristicValue); JSONArray descriptors = Tools.getArray(characteristics, j, Tools.DESCRIPTORS); for (int k = 0; k < descriptors.length(); k++) { byte[] descriptorValue = Tools.decodeBase64(Tools.getData(descriptors, Tools.DESCRIPTOR_VALUE)); UUID descriptorUUID = UUID.fromString(Tools.getData(descriptors, Tools.DESCRIPTOR_UUID)); int descriptorPermission = Tools .encodePermission(Tools.getArray(descriptors, Tools.DESCRIPTOR_PERMISSION)); BluetoothGattDescriptor descriptor = new BluetoothGattDescriptor(descriptorUUID, descriptorPermission); descriptor.setValue(descriptorValue); characteristic.addDescriptor(descriptor); } service.addCharacteristic(characteristic); } if (mBluetoothGattServer.addService(service)) { localServices.put(uniqueID, service); } } }
From source file:edu.umich.eecs.lab11.camera.CameraFragment.java
private void initServer() { BluetoothGattService service = new BluetoothGattService(DeviceProfile.SERVICE_UUID, BluetoothGattService.SERVICE_TYPE_PRIMARY); BluetoothGattCharacteristic offsetCharacteristic = new BluetoothGattCharacteristic( DeviceProfile.CHARACTERISTIC_UUID, //Read+write permissions BluetoothGattCharacteristic.PROPERTY_READ | BluetoothGattCharacteristic.PROPERTY_WRITE, BluetoothGattCharacteristic.PERMISSION_READ | BluetoothGattCharacteristic.PERMISSION_WRITE); service.addCharacteristic(offsetCharacteristic); mGattServer.addService(service);//w w w .j a v a2 s.c om }