Tabla de contenido:

Aplicación IOS simple para módulos BLE: 4 pasos
Aplicación IOS simple para módulos BLE: 4 pasos

Video: Aplicación IOS simple para módulos BLE: 4 pasos

Video: Aplicación IOS simple para módulos BLE: 4 pasos
Video: Modulo Bluetooth Hm-10 — Arduino para iPhone ó iPad (Solo Configuracion) 2024, Junio
Anonim
Aplicación IOS simple para módulos BLE
Aplicación IOS simple para módulos BLE

Este Instructable explica cómo puede crear una aplicación iOS con una funcionalidad muy básica. Este Instructable no pasará por todo el proceso de creación de una aplicación BLE para iOS. Solo brindará una descripción general de alto nivel de algunos elementos importantes dentro de la aplicación. Desde allí, con suerte, puede descargar el proyecto y jugar con el código usted mismo para aprender más sobre la implementación.

Me estoy comunicando con un módulo BLE RN4871 en mi proyecto. Específicamente la placa de clic RN4871 que está hecha por MikroElektronika. Estos Click Boards se pueden encontrar en el sitio web de Mikro, así como en otros sitios web de distribuidores como DigiKey, Mouser, etc. Es cierto que estos Click Boards son más costosos que otros módulos que puedes encontrar, sin embargo, me gusta usarlos en mis proyectos porque Fuera de la caja, están listos para transmitir y recibir datos sin necesidad de configuración. He tenido demasiadas ocasiones en las que compré un módulo barato de $ 5 en línea y tuve que leer la hoja de datos completa para descubrir cómo configurarlo. Para mí, eso es aproximadamente de 2 a 4 horas de trabajo tratando de configurar el módulo antes de que pueda enviar datos. ¡Estos tableros de clic parecen funcionar desde el primer momento sin dolores de cabeza, por lo que reciben mi aprobación!

Aunque esta aplicación de iOS está diseñada para comunicarse con el RN4871 y el RN4870, este mismo código también se puede usar para otros módulos BLE (con algunas modificaciones de código, por supuesto).

¡Siéntete libre de usar el código como quieras! No soy un desarrollador de aplicaciones profesional, así que perdóname si algo te hace temblar:)

Paso 1: los permisos BLE agregados

Los permisos BLE agregados
Los permisos BLE agregados

Una característica importante es el permiso adicional para usar BLE dentro de la aplicación.

El código fuente de esta aplicación tiene una clave agregada en el archivo info.plist. Es necesario agregar la tecla Privacidad - Descripción de uso de periféricos de Bluetooth para poder utilizar BLE. Sin agregar esta clave Bluetooth, Xcode le dará un error cuando intente ejecutar la aplicación.

Paso 2: el archivo Bluetooth.swift

Este es posiblemente el archivo más importante de este proyecto. Dentro de este archivo Bluetooth.swift, se crea un objeto global de tipo BluetoothClass. Este objeto global es inicializado por BluetoothHomeViewController cuando aparece.

El objeto contiene una variable centralManager y una variable periférica. Una vez que se definen estas variables, se utilizan en el resto de la aplicación. Al implementar nuestra propia clase, evitamos la necesidad de inicializar múltiples instancias del centralManager y el periférico, por lo tanto, podemos usar el mismo objeto sin importar cuántos viewControllers o archivos se agreguen. Además, no tenemos que preocuparnos por pasar un solo objeto a varios archivos y viewControllers. ¡Eso puede ensuciarse!

Este archivo contiene todo lo que se utiliza para descubrir, conectarse y comunicarse con un periférico.

También contiene el serviceUUID que buscaremos junto con rxUUID (recibir) y txUUID (transmitir). Si desea utilizar un módulo diferente con esta aplicación, todo lo que debe hacer es cambiar estos valores para que coincidan con los UUID del nuevo módulo que está utilizando.

Paso 3: ViewControllers

Esta aplicación es extremadamente simple. Solo hay dos ViewControllers: uno para enviar datos de un lado a otro y otro para buscar periféricos.

BluetoothHomeViewController aspectos importantes a tener en cuenta:

  • Creamos notificaciones para cuando nuestro objeto Bluetooth encuentra un periférico y cuando nuestro objeto Bluetooth recibe un mensaje.
  • Nos suscribimos a la notificación del mensaje recibido.

    Básicamente, esto genera una interrupción, cuando en este viewController, cada vez que recibimos algo. Luego mostramos lo que recibimos en el campo de texto

ScannerViewController aspectos importantes a tener en cuenta:

  • Nos suscribimos a la notificación de periféricos encontrados.

    Esto crea una interrupción, cuando en este viewController, cada vez que se encuentra un nuevo periférico que coincide con nuestro serviceUUID para que podamos recargar la tabla que muestra los periféricos disponibles

Paso 4: ¡Eso es todo

Por supuesto, hay otras cosas que suceden dentro de la aplicación. Sin embargo, solo describí las cosas que podrían no estar muy claras dentro de la implementación. Con suerte, el resto del código del que no hablé se explica por sí mismo.

Nuevamente, este código debería poder usarse con otros módulos BLE fuera del RN4871. Simplemente debería necesitar modificar los UUID dentro del archivo Bluetooth.swift.

Descargue el proyecto y juegue con el código usted mismo para aprender exactamente cómo se implementa todo. El código es muy simple para que pueda agregarlo y modificarlo para que se ajuste a su propia aplicación.

¡Feliz codificación!

-ChocolateDrizzle

Recomendado: