Java Code Examples for android.bluetooth.BluetoothGattDescriptor#PERMISSION_READ
The following examples show how to use
android.bluetooth.BluetoothGattDescriptor#PERMISSION_READ .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: GattServer.java From blefun-androidthings with Apache License 2.0 | 6 votes |
private BluetoothGattService createAwesomenessService() { BluetoothGattService service = new BluetoothGattService(SERVICE_UUID, BluetoothGattService.SERVICE_TYPE_PRIMARY); // Counter characteristic (read-only, supports notifications) BluetoothGattCharacteristic counter = new BluetoothGattCharacteristic(CHARACTERISTIC_COUNTER_UUID, BluetoothGattCharacteristic.PROPERTY_READ | BluetoothGattCharacteristic.PROPERTY_NOTIFY, BluetoothGattCharacteristic.PERMISSION_READ); BluetoothGattDescriptor counterConfig = new BluetoothGattDescriptor(DESCRIPTOR_CONFIG, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE); counter.addDescriptor(counterConfig); BluetoothGattDescriptor counterDescription = new BluetoothGattDescriptor(DESCRIPTOR_USER_DESC, BluetoothGattDescriptor.PERMISSION_READ); counter.addDescriptor(counterDescription); // Interactor characteristic BluetoothGattCharacteristic interactor = new BluetoothGattCharacteristic(CHARACTERISTIC_INTERACTOR_UUID, BluetoothGattCharacteristic.PROPERTY_WRITE_NO_RESPONSE, BluetoothGattCharacteristic.PERMISSION_WRITE); BluetoothGattDescriptor interactorDescription = new BluetoothGattDescriptor(DESCRIPTOR_USER_DESC, BluetoothGattDescriptor.PERMISSION_READ); interactor.addDescriptor(interactorDescription); service.addCharacteristic(counter); service.addCharacteristic(interactor); return service; }
Example 2
Source File: TimeProfile.java From sample-bluetooth-le-gattserver with Apache License 2.0 | 6 votes |
/** * Return a configured {@link BluetoothGattService} instance for the * Current Time Service. */ public static BluetoothGattService createTimeService() { BluetoothGattService service = new BluetoothGattService(TIME_SERVICE, BluetoothGattService.SERVICE_TYPE_PRIMARY); // Current Time characteristic BluetoothGattCharacteristic currentTime = new BluetoothGattCharacteristic(CURRENT_TIME, //Read-only characteristic, supports notifications BluetoothGattCharacteristic.PROPERTY_READ | BluetoothGattCharacteristic.PROPERTY_NOTIFY, BluetoothGattCharacteristic.PERMISSION_READ); BluetoothGattDescriptor configDescriptor = new BluetoothGattDescriptor(CLIENT_CONFIG, //Read/write descriptor BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE); currentTime.addDescriptor(configDescriptor); // Local Time Information characteristic BluetoothGattCharacteristic localTime = new BluetoothGattCharacteristic(LOCAL_TIME_INFO, //Read-only characteristic BluetoothGattCharacteristic.PROPERTY_READ, BluetoothGattCharacteristic.PERMISSION_READ); service.addCharacteristic(currentTime); service.addCharacteristic(localTime); return service; }
Example 3
Source File: AbstractHOGPServer.java From DeviceConnect-Android with MIT License | 6 votes |
/** * Setup Battery Service * * @return the service */ private BluetoothGattService setUpBatteryService() { final BluetoothGattService service = new BluetoothGattService(SERVICE_BATTERY, BluetoothGattService.SERVICE_TYPE_PRIMARY); // Battery Level final BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic( CHARACTERISTIC_BATTERY_LEVEL, BluetoothGattCharacteristic.PROPERTY_NOTIFY | BluetoothGattCharacteristic.PROPERTY_READ, BluetoothGattCharacteristic.PERMISSION_READ_ENCRYPTED); final BluetoothGattDescriptor clientCharacteristicConfigurationDescriptor = new BluetoothGattDescriptor( DESCRIPTOR_CLIENT_CHARACTERISTIC_CONFIGURATION, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE); clientCharacteristicConfigurationDescriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE); characteristic.addDescriptor(clientCharacteristicConfigurationDescriptor); service.addCharacteristic(characteristic); return service; }
Example 4
Source File: CharacteristicNotificationDescriptor.java From bitgatt with Mozilla Public License 2.0 | 5 votes |
/** * Will create a 0x2902 characteristic descriptor */ public CharacteristicNotificationDescriptor() { super(notificationDescriptorTwentyNineOhTwo, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE | BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED | BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); }
Example 5
Source File: CharacteristicNamespaceDescriptor.java From bitgatt with Mozilla Public License 2.0 | 5 votes |
/** * Will create a 0x2904 characteristic descriptor */ public CharacteristicNamespaceDescriptor() { super(notificationDescriptorTwentyNineOhFour, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE | BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED | BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); }
Example 6
Source File: GattNotifyIndicateTests.java From bitgatt with Mozilla Public License 2.0 | 5 votes |
@Test public void subscribeToNotificationTest() { final byte[] fakeData = new byte[]{'a','b','c','d','e','f','g','h','i', 'j'}; BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic(UUID.randomUUID(), BluetoothGattCharacteristic.PROPERTY_WRITE, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); SubscribeToCharacteristicNotificationsMockTransaction subscribeChar = new SubscribeToCharacteristicNotificationsMockTransaction(conn, GattState.ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS, characteristic, fakeData, false); conn.runTx(subscribeChar, result -> { assert(result.resultStatus.equals(TransactionResult.TransactionResultStatus.SUCCESS) && result.resultState.equals(subscribeChar.getSuccessState())); }); }
Example 7
Source File: GattNotifyIndicateTests.java From bitgatt with Mozilla Public License 2.0 | 5 votes |
@Test public void unSubscribeToNotificationTest() { final byte[] fakeData = new byte[]{'a','b','c','d','e','f','g','h','i', 'j'}; BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic(UUID.randomUUID(), BluetoothGattCharacteristic.PROPERTY_WRITE, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); UnSubscribeToGattCharacteristicNotificationsMockTransaction unSubscribeChar = new UnSubscribeToGattCharacteristicNotificationsMockTransaction(conn, GattState.ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS, characteristic, fakeData, false); conn.runTx(unSubscribeChar, result -> { assert(result.resultStatus.equals(TransactionResult.TransactionResultStatus.SUCCESS) && result.resultState.equals(unSubscribeChar.getSuccessState())); }); }
Example 8
Source File: GattNotifyIndicateTests.java From bitgatt with Mozilla Public License 2.0 | 5 votes |
@Test public void failToSubscribeToNotificationTest() { final byte[] fakeData = new byte[]{'a','b','c','d','e','f','g','h','i', 'j'}; BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic(UUID.randomUUID(), BluetoothGattCharacteristic.PROPERTY_WRITE, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); SubscribeToCharacteristicNotificationsMockTransaction subscribeChar = new SubscribeToCharacteristicNotificationsMockTransaction(conn, GattState.ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS, characteristic, fakeData, true); conn.runTx(subscribeChar, result -> { assert(result.resultStatus.equals(TransactionResult.TransactionResultStatus.TIMEOUT)); }); }
Example 9
Source File: GattNotifyIndicateTests.java From bitgatt with Mozilla Public License 2.0 | 5 votes |
@Test public void failToUnSubscribeToNotificationTest() { final byte[] fakeData = new byte[]{'a','b','c','d','e','f','g','h','i', 'j'}; BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic(UUID.randomUUID(), BluetoothGattCharacteristic.PROPERTY_WRITE, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); UnSubscribeToGattCharacteristicNotificationsMockTransaction unSubscribeChar = new UnSubscribeToGattCharacteristicNotificationsMockTransaction(conn, GattState.ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS, characteristic, fakeData, true); conn.runTx(unSubscribeChar, result -> { assert(result.resultStatus.equals(TransactionResult.TransactionResultStatus.TIMEOUT)); }); }
Example 10
Source File: GattNotifyIndicateTests.java From bitgatt with Mozilla Public License 2.0 | 5 votes |
@Test public void NotifyServerCharacteristicTest() { final byte[] fakeData = new byte[]{'a','b','c','d','e','f','g','h','i', 'j'}; BluetoothGattCharacteristic characteristic = new BluetoothGattCharacteristic(UUID.randomUUID(), BluetoothGattCharacteristic.PROPERTY_WRITE, BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); characteristic.setValue(fakeData); NotifyGattServerCharacteristicMockTransaction notifyChar = new NotifyGattServerCharacteristicMockTransaction(FitbitGatt.getInstance().getServer(), device, GattState.NOTIFY_CHARACTERISTIC_SUCCESS, characteristic, false, false); conn.runTx(notifyChar, result -> { assert(result.resultStatus.equals(TransactionResult.TransactionResultStatus.SUCCESS)); }); }
Example 11
Source File: BLEServicePeripheral.java From unity-bluetooth with MIT License | 5 votes |
@TargetApi(Build.VERSION_CODES.LOLLIPOP) public BLEServicePeripheral(final Activity activity) { super(activity); mBtAdvertiser = mBtAdapter.getBluetoothLeAdvertiser(); mBtGattCharacteristic = new BluetoothGattCharacteristic( UUID.fromString(CHARACTERISTIC_UUID), BluetoothGattCharacteristic.PROPERTY_NOTIFY | BluetoothGattCharacteristic.PROPERTY_READ | BluetoothGattCharacteristic.PROPERTY_WRITE , BluetoothGattDescriptor.PERMISSION_WRITE | BluetoothGattCharacteristic.PERMISSION_READ); BluetoothGattDescriptor dataDescriptor = new BluetoothGattDescriptor( UUID.fromString(CHARACTERISTIC_CONFIG_UUID), BluetoothGattDescriptor.PERMISSION_WRITE | BluetoothGattDescriptor.PERMISSION_READ); mBtGattCharacteristic.addDescriptor(dataDescriptor); }
Example 12
Source File: Helper.java From react-native-ble-manager with Apache License 2.0 | 5 votes |
public static WritableMap decodePermissions(BluetoothGattDescriptor descriptor) { // NOTE: props strings need to be consistent across iOS and Android WritableMap props = Arguments.createMap(); int permissions = descriptor.getPermissions(); if ((permissions & BluetoothGattDescriptor.PERMISSION_READ) != 0x0 ) { props.putString("Read", "Read"); } if ((permissions & BluetoothGattDescriptor.PERMISSION_WRITE) != 0x0 ) { props.putString("Write", "Write"); } if ((permissions & BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED) != 0x0 ) { props.putString("ReadEncrypted", "ReadEncrypted"); } if ((permissions & BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED) != 0x0 ) { props.putString("WriteEncrypted", "WriteEncrypted"); } if ((permissions & BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED_MITM) != 0x0 ) { props.putString("ReadEncryptedMITM", "ReadEncryptedMITM"); } if ((permissions & BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED_MITM) != 0x0 ) { props.putString("WriteEncryptedMITM", "WriteEncryptedMITM"); } if ((permissions & BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED) != 0x0 ) { props.putString("WriteSigned", "WriteSigned"); } if ((permissions & BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED_MITM) != 0x0 ) { props.putString("WriteSignedMITM", "WriteSignedMITM"); } return props; }
Example 13
Source File: Peripheral.java From ble-test-peripheral-android with Apache License 2.0 | 5 votes |
public static BluetoothGattDescriptor getClientCharacteristicConfigurationDescriptor() { BluetoothGattDescriptor descriptor = new BluetoothGattDescriptor( CLIENT_CHARACTERISTIC_CONFIGURATION_UUID, (BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE)); descriptor.setValue(new byte[]{0, 0}); return descriptor; }
Example 14
Source File: Peripheral.java From ble-test-peripheral-android with Apache License 2.0 | 5 votes |
public static BluetoothGattDescriptor getCharacteristicUserDescriptionDescriptor(String defaultValue) { BluetoothGattDescriptor descriptor = new BluetoothGattDescriptor( CHARACTERISTIC_USER_DESCRIPTION_UUID, (BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE)); try { descriptor.setValue(defaultValue.getBytes("UTF-8")); } finally { return descriptor; } }
Example 15
Source File: GattPlugin.java From bitgatt with Mozilla Public License 2.0 | 4 votes |
@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) String getStringRepresentationOfPermissionsForDescriptor(BluetoothGattDescriptor descriptor) { StringBuilder permissionBuilder = new StringBuilder(); ArrayList<Integer> permissions = new ArrayList<>(8); int descriptorPermissions = descriptor.getPermissions(); if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_READ) == BluetoothGattDescriptor.PERMISSION_READ) { permissions.add(BluetoothGattDescriptor.PERMISSION_READ); } if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED) == BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED) { permissions.add(BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED); } if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED_MITM) == BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED_MITM) { permissions.add(BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED_MITM); } if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_WRITE) == BluetoothGattDescriptor.PERMISSION_WRITE) { permissions.add(BluetoothGattDescriptor.PERMISSION_WRITE); } if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED) == BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED) { permissions.add(BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED); } if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED_MITM) == BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED_MITM) { permissions.add(BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED_MITM); } if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED) == BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED) { permissions.add(BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED); } if ((descriptorPermissions & BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED_MITM) == BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED_MITM) { permissions.add(BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED_MITM); } for (int i = 0; i < permissions.size(); i++) { int permission = permissions.get(i); switch (permission) { case BluetoothGattDescriptor.PERMISSION_READ: permissionBuilder.append("read"); break; case BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED: permissionBuilder.append("read-encrypted"); break; case BluetoothGattDescriptor.PERMISSION_WRITE: permissionBuilder.append("write"); break; case BluetoothGattDescriptor.PERMISSION_READ_ENCRYPTED_MITM: permissionBuilder.append("read-encrypted-mitm"); break; case BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED: permissionBuilder.append("write-encrypted"); break; case BluetoothGattDescriptor.PERMISSION_WRITE_ENCRYPTED_MITM: permissionBuilder.append("write-encrypted-mitm"); break; case BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED: permissionBuilder.append("write-signed"); break; case BluetoothGattDescriptor.PERMISSION_WRITE_SIGNED_MITM: permissionBuilder.append("write-signed-mitm"); break; default: permissionBuilder.append("unknown"); } if (i < permissions.size() - 1) { permissionBuilder.append(", "); } } return permissionBuilder.toString(); }