Я довольно новичок в программировании на объекте C, поэтому, пожалуйста, извините, если это очень простой вопрос.ObjectiveC: Чтение характеристик в определенном порядке
Я подключаюсь к периферийному устройству по Bluetooth и хочу иметь возможность читать характеристики устройств в определенном порядке. Значение (значения), возвращаемое с одного признака, определит, какую характеристику следует читать далее.
В настоящее время, если я открываю новую характеристику, используя код
[peripheral discoverCharacteristics:@[[CBUUID UUIDWithString:MyUUID_1]] forService:service];
можно обнаружить характеристику правильно и может считывать значение. Моя проблема связана с тем, что после обнаружения первого символа я попытаюсь обнаружить вторую характеристику, используя тот же код, что и выше, но с MyUUID_2.
Когда метод didDiscoverCharacteristicsForService называется услуга имеет как MyUUID_1 и MyUUID_2 характеристики. Поэтому при переходе через мои циклы if внутри метода первый признак снова используется.
Есть ли способ, чтобы очистить обнаруженные характеристики от службы, так что единственная характеристика петельных через внутри didDiscoverCharacteristicsForService характеристический называется желательно по зову discoverCharacteristics
Большое спасибо «NSNotificationCenter» за ваш ответ, и для скорость при этом. Вы имеете в виду, что я должен обнаружить службы, а затем открыть все характеристики, которые могут потребоваться с помощью вызова DiscoverCharacteristics. Затем внутри обратного вызова didDiscoverCharacteristicsForService просто прочитал их в том порядке, который мне бы хотелось? Затем –
Вам необязательно читать характеристики внутри 'didDiscoverCharacteristicsForService'. Вы можете обернуть все, используя делегирование или NSOperations. Я попытаюсь обновить свой первый пост. – yageek
Итак, моя проблема в том, что вызов может быть FFF1 -> FFF2 -> FFF3, а второй раз может быть FFF5 -> FFF3 -> FFF2 –