2016-07-06 5 views
0

Интересно о семантике CBManager's retrieveConnectedPeripheralsWithServices. Каждый раз, когда я использую это, я возвращаю экземпляры CBPeripheral с состоянием CBPeripheralStateDisconnected.CoreBluetooth `retrieveConnectedPeripheralsWithServices` возвращает отключенные периферийные устройства

Нет проблем с подключением снова, но разве этот метод не должен возвращать подключен периферийные устройства?

+0

«Список подключенных периферийных устройств может включать в себя те, которые подключены другими приложениями, и их необходимо будет подключать локально с помощью метода connectPeripheral: options: before, прежде чем они могут быть использованы». У вас есть несколько экземпляров CBCentralManager в вашем приложении? – Paulw11

+0

Нет, только один (сказал, позвольте мне проверить, нет ли утечки). Это происходит даже после (успешно) подключения к устройству. – DrMickeyLauer

ответ

1

К сожалению, это предполагаемое поведение. Это немного противоречиво, я должен признать, но периферийное состояние всегда связано с вашим приложением. Это означает, что если вы подключили/подключили/связали периферийное устройство с помощью другого приложения или с помощью настроек системы bluetooth, оно все равно будет отображаться как отключенное в вашем приложении. Если вы подключили некоторые периферийные устройства в своем приложении, они будут отображаться как подключенные.

+0

Я могу понять, что статус в целом зависит от приложения из-за концепции песочницы. Интересно, хотя я не должен получить хотя бы подключенное состояние для устройств, которые я подключил к _within_ моему приложению, или это возможно, что состояние даже изолировано для CBCentralManager (т.е. для каждого нового CBCentralManager, я всегда получаю «отключен» нет от того, что)? – DrMickeyLauer

+1

Да, это может случиться. Периферия из одного 'CBCentralManager' не может использоваться в другом' CBCentralManager'. Я предлагаю использовать только один 'CBCentralManager', иначе вы можете столкнуться с проблемами. На этом форуме хорошо читается [Форум разработчиков Apple] (https://forums.developer.apple.com/thread/20810). –

Смежные вопросы