모바일 장치 (스캐너)에서 연결된 웨어러블 (브로드 캐스터)의 설명자에 쓰려고합니다.Android BLE : GATT_WRITE_NOT_PERMITTED로 서술자/특성 쓰기가 실패합니다.
착용에, 나는 모바일에
readCharacteristic = new BluetoothGattCharacteristic(Constants.READ_CHAR_UUID,
BluetoothGattCharacteristic.PROPERTY_READ | BluetoothGattCharacteristic.PROPERTY_NOTIFY,
BluetoothGattCharacteristic.PERMISSION_READ);
readCharacteristic.addDescriptor(new BluetoothGattDescriptor(Constants.NOTIFY_DESC_UUID,
BluetoothGattDescriptor.PERMISSION_READ | BluetoothGattDescriptor.PERMISSION_WRITE));
로 설명을 정의, 나는 불행하게도
BluetoothGattDescriptor descriptor = readCharacteristic.getDescriptor(Constants.NOTIFY_DESC_UUID);
descriptor.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE)
와 특성에 쓰기를 시도,이
에서 상태 GATT_WRITE_NOT_PERMITTED 실패@Override
public void onDescriptorWrite(BluetoothGatt gatt, BluetoothGattDescriptor descriptor, int status) {
}
착용 가능한 logcat에서 gatts_write_attr_perm_check - GATT_WRITE_NOT_PERMIT.
특성에 쓰려고 할 때도 똑같은 일이 발생합니다.
이상한 점은 iOS 스캐너를 사용할 때 쓰기가 성공한다는 것입니다. 이는 웨어러블 부품이 올바른 것을 의미합니다. 사용
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
장치 :
나는 매니페스트의 권한이 넥서스 5 배 6.0.1 API 23 모토를 360 5.1.1 사람이 어떻게 생각을 가지고 있습니까 (22)API 이 디스크립터/특성 쓰기 문제를 수정 하시겠습니까?
감사합니다, 나는 기술자에 PERMISSION_WRITE_SIGNED_MITM으로 시도했지만 지금에 쓰기를 시도 할 때 나는에 상태 1을 얻을 onDescriptorWrite. 나는 그것의 GATT_FAILURE = 0x101을 추측합니까? 도움이 될만한 아이디어가 있습니까? –
죄송합니다. 로그가 있습니까? –
나는 또한 포스트를 편집했다. 알림을 사용하려면 샘플을 따르십시오. –