Этот вопрос связан с вопросом " Периферийное устройство Bluetooth ADVERTISE_FAILED_DATA_TOO_LARGE "
Когда вы настраиваете объект AdvertiseData в Android, необходимо включить ParcelUuid, который должен быть 16 байтов. Учитывая, что ограничение размера пакета составляет 31 байт, у меня должно быть 15 байт, чтобы включить имя устройства в AdvertiseData.
Я проверил это, и ограничение на имя устройства составляет 8 байт;Пройдите дальше, и вы получите ошибку "ADVERTISE_FAILED_DATA_TOO_LARGE". Простое решение (которое было ответом в проблеме по ссылке выше) состоит в том, чтобы просто setIncludeDeviceName (false) и покончить с этим;Тем не менее, я хотел бы сделать следующее:
bluetoothAdapter.setName (bluetoothAdapter.getName (). substring (0, 8));
Но кажется 8 символовКороче говоря, И я думаю, что я буду программно менять имя устройства Bluetooth для всех приложений (это, вероятно, недостаток безопасности, который в конечном итоге будет закрыт).
Два вопроса:
- Гдемои пропущенные байты? ... над головой?
- Это плохая идея программно изменить имя устройства Bluetooth для всех приложений?
Thx.