Оглавление:

Простое приложение IOS для модулей BLE: 4 шага
Простое приложение IOS для модулей BLE: 4 шага

Видео: Простое приложение IOS для модулей BLE: 4 шага

Видео: Простое приложение IOS для модулей BLE: 4 шага
Видео: Этапы создания iOS приложения 2024, Ноябрь
Anonim
Простое приложение IOS для модулей BLE
Простое приложение IOS для модулей BLE

В этом руководстве рассказывается, как создать приложение для iOS с очень простыми функциями. Эта инструкция не будет проходить через весь процесс создания приложения BLE для iOS. Это даст общий обзор некоторых важных элементов приложения. Надеюсь, оттуда вы сможете скачать проект и поиграть с кодом самостоятельно, чтобы узнать больше о реализации.

Я общаюсь с модулем RN4871 BLE в своем проекте. В частности, доска RN4871 Click Board производства MikroElektronika. Эти доски Click Boards можно найти на веб-сайте Mikro, а также на сайтах других дистрибьюторов, таких как DigiKey, Mouser и т. Д. По общему признанию, эти Click Boards дороже, чем другие модули, которые вы можете найти, однако мне нравится использовать их в своих проектах, потому что прямо из коробки они готовы передавать и принимать данные без какой-либо настройки. Слишком много раз я покупал дешевый модуль за 5 долларов в Интернете, и мне приходилось читать всю таблицу, чтобы понять, как его настроить. Для меня это около 2-4 часов работы, пытаясь настроить модуль, прежде чем я смогу даже отправить данные! Эти кликборды, кажется, работают прямо из коробки, без головной боли, поэтому они получают от меня большой палец вверх!

Хотя это приложение iOS предназначено для связи с RN4871 и RN4870, этот же код можно использовать и для других модулей BLE (конечно, с некоторой модификацией кода).

Не стесняйтесь использовать код как хотите! Я не профессиональный разработчик приложений, так что простите меня, если что-то в нем заставляет вас съежиться:)

Шаг 1: добавленные разрешения BLE

Добавленные разрешения BLE
Добавленные разрешения BLE

Одной из важных функций является добавленное разрешение на использование BLE в приложении.

В исходный код этого приложения добавлен ключ в файле info.plist. Для использования BLE необходимо добавить ключ Privacy - Bluetooth Peripheral Usage Description. Без добавления этого ключа Bluetooth Xcode выдаст вам ошибку при попытке запустить приложение.

Шаг 2. Файл Bluetooth.swift

Возможно, это самый важный файл в этом проекте. В этом файле Bluetooth.swift создается глобальный объект типа BluetoothClass. Этот глобальный объект инициализируется BluetoothHomeViewController при его появлении.

Объект содержит как переменную centralManager, так и периферийную переменную. После определения этих переменных они используются во всем приложении. Реализуя наш собственный класс, мы избегаем необходимости инициализировать несколько экземпляров centralManager и периферийного устройства, поэтому мы можем использовать один и тот же объект независимо от того, сколько viewControllers или файлов добавлено. Кроме того, нам не нужно беспокоиться о передаче одного объекта нескольким файлам и viewController. Это может запутаться!

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

Он также содержит serviceUUID, который мы будем сканировать вместе с rxUUID (получение) и txUUID (передача). Если вы хотите использовать другой модуль с этим приложением, все, что вам нужно сделать, это изменить эти значения, чтобы они соответствовали UUID нового модуля, который вы используете.

Шаг 3: ViewControllers

Это приложение очень простое. Есть только два ViewController: один для отправки данных туда и обратно, а другой для поиска периферийных устройств.

Важные моменты BluetoothHomeViewController:

  • Мы создаем уведомления, когда наш объект Bluetooth находит периферийное устройство и когда наш объект Bluetooth получает сообщение.
  • Подписываемся на уведомление о полученном сообщении.

    Это в основном генерирует прерывание в этом viewController каждый раз, когда мы что-то получаем. Затем мы отображаем то, что получили, в текстовом поле

Важно отметить ScannerViewController:

  • Подписываемся на обнаруженное периферийное уведомление.

    Это создает прерывание, когда в этом viewController обнаруживается новое периферийное устройство, которое соответствует нашему serviceUUID, чтобы мы могли перезагрузить таблицу, отображающую доступные периферийные устройства

Шаг 4: Это довольно много

Конечно, в приложении есть и другие вещи. Однако я описал только те вещи, которые могут быть не очень ясны в реализации. Надеюсь, остальная часть кода, о которой я не говорил, не требует пояснений.

Опять же, этот код можно использовать с другими модулями BLE за пределами RN4871. Вам просто нужно изменить UUID внутри файла Bluetooth.swift.

Пожалуйста, скачайте проект и поиграйте с кодом самостоятельно, чтобы точно узнать, как все реализовано. Код очень прост, так что вы можете добавлять и изменять его, чтобы он соответствовал вашему собственному приложению.

Удачного кодирования!

-Шоколад

Рекомендуемые: