Есть ли какой-нибудь способ обеспечить поддержку периферийного режима ядра Bluetooth в WatchOS и TVOS? - PullRequest
0 голосов
/ 08 марта 2020

Это может показаться странным вопросом, так как все, что горит Apple , похоже, говорят "нет проблем", но фактическая реализация говорит "проблема".

Я работаю над создание примера SDK, который предназначен для работы на всех платформах (TV, Watch, iOS и Ma c).

SDK может работать как в центральном, так и в периферийном режимах.

iOS и MacOS не проблема. Я могу запустить их в любом режиме.

Но когда я пытаюсь получить один и тот же код для компиляции для часов и телевидения, я получаю "'init (type: properties: value: permissions :)' недоступно в Ошибки tvOS "и" 'init (type: primary :)' недоступны в tvOS "(или WatchOS) при попытке создания экземпляров изменяемых служб и характеристик. Ошибки Navigator указывают на то, что Apple явно пометила их как недоступные. The Displayed Compile Errors Если Я смотрю классы в документах , классы поддерживаются, но если я смотрю единственные поддерживаемые инициализаторы , поддержка не поддерживается Смотреть или смотреть телевизор.

Кроме того, классы на самом деле не поддерживаются, так как вы не можете их создать.

Кто-нибудь видит, что мне не хватает? Есть ли какой-нибудь способ создания изменяемых экземпляров Service и Characteristi c в PeripheralManager в WatchOS или TVOS?

1 Ответ

1 голос
/ 09 марта 2020

CoreBluetooth на tvOS и watchOS поддерживает только центральный режим. Вы не можете выступать в качестве периферийного устройства.

Это было рассмотрено в 2017 WWD C сессии , где Core Bluetooth был представлен на следующих платформах:

Итак, мы Решено для аксессуаров или для TVOS, вы можете выступать только в качестве центрального устройства, и вы можете подключиться только к двум одновременным устройствам.

...

И аналогично, Для наблюдения за ОС tvOS - это платформа, которая использует Bluetooth для своей основной функциональности системы

Аналогично, для tvOS вы можете выступать только в качестве центрального, то есть вы можете подключаться к аксессуарам, но не можете действовать в качестве периферийного устройства к другим устройствам.

...