特性の記述子の取得に問題があり、常に null を返します。私のコードのチャンクがあります:
public static final String CHARACTERISTIC_UPDATE_NOTIFICATION_DESCRIPTOR_UUID = "00000001-0000-1000-8000-00805f9b34fb";
public final static UUID tmp_uuid_1 = UUID.fromString(CHARACTERISTIC_UPDATE_NOTIFICATION_DESCRIPTOR_UUID);
...
BluetoothGattDescriptor descriptor = gattCharacteristic.getDescriptor(tmp_uuid_1);
descriptor.setValue(true ? BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE : new byte[]{0x00, 0x00});
Android 5.1 を搭載した Nexus 6 と、Android 4.3 のような OS 2.0 を搭載した Nokia X2 DS でこれを試しましたが、同様のエラーが発生しました。
回答待ち ) ご清聴ありがとうございました!