在寫Android BLE Server端的時候,發現start advertise的時候,報出ADVERTISE_FAILED_DATA_TOO_LARGE的錯誤:
AdvertiseData data = new AdvertiseData.Builder()
.setIncludeDeviceName(true)
.addServiceUuid(new ParcelUuid(DeviceProfile.SERVICE_UUID))
.build();
mBluetoothLeAdvertiser.startAdvertising(settings, data, mAdvertiseCallback);
這種錯誤表示你填充的數據過大,經常是因爲這段代碼
.setIncludeDeviceName(true)
可以有兩種處理方法:
- 在上面方法中傳入false
- 到系統的藍牙設置裏面,將你的藍牙的名字改短