Mundarija:
- 1 -qadam: Qo'shilgan BLE ruxsatnomalari
- 2 -qadam: Bluetooth.swift fayli
- 3 -qadam: ViewControllers
- 4 -qadam: Bu juda ko'p
Video: BLE modullari uchun oddiy IOS ilovasi: 4 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Bu yo'riqnomada siz juda oddiy funktsiyali iOS ilovasini qanday yaratishni ko'rib chiqasiz. Bu ko'rsatma iOS BLE ilovasini yaratishning butun jarayonidan o'tmaydi. Bu faqat ilova ichidagi ba'zi muhim elementlarga yuqori darajadagi sharh beradi. Umid qilamizki, siz loyihani yuklab olishingiz va amalga oshirish haqida ko'proq ma'lumot olish uchun o'zingiz kod bilan o'ynashingiz mumkin.
Men loyihamda RN4871 BLE moduli bilan aloqa qilyapman. Xususan, Mikroelektronika tomonidan ishlab chiqarilgan RN4871 Click Board. Bu bosish taxtalarini Mikro veb -saytida, shuningdek, DigiKey, Mouser va boshqalar kabi tarqatuvchi veb -saytlarda topish mumkin. Albatta, bu bosish taxtalari siz topa oladigan boshqa modullarga qaraganda qimmatroq, lekin men ularni o'z loyihalarimda ishlatishni yaxshi ko'raman. ular hech qanday konfiguratsiyaga muhtoj bo'lmasdan ma'lumotlarni uzatish va qabul qilishga tayyor. Men juda ko'p marta Internetda 5 dollarlik arzon modul sotib olganman va uni qanday sozlash kerakligini tushunish uchun butun ma'lumotlar jadvalini o'qishga to'g'ri kelgan. Men uchun bu ma'lumotni yuborishdan oldin modulni sozlash uchun 2-4 soatlik ish! Bu bosish taxtalari hech qanday bosh og'rig'i bo'lmagan qutidan ishlayotganga o'xshaydi, shuning uchun ular mendan bosh barmog'ini olishadi!
Garchi bu iOS ilovasi RN4871 va RN4870 bilan aloqa qilish uchun yaratilgan bo'lsa -da, xuddi shu kod boshqa BLE modullari uchun ham ishlatilishi mumkin (ba'zi kod o'zgartirishlari bilan).
Kodni xohlaganingizcha ishlating! Men professional dastur ishlab chiqaruvchi emasman, shuning uchun agar biror narsa sizni asabiylashtirsa, meni kechiring:)
1 -qadam: Qo'shilgan BLE ruxsatnomalari
Muhim xususiyatlardan biri - bu ilovada BLE -dan foydalanish uchun ruxsat.
Ushbu ilovaning manba kodi info.plist faylida qo'shimcha kalitga ega. BLE -dan foydalanish uchun Maxfiylik - Bluetooth atrof -muhitdan foydalanish tavsifi kalitini qo'shish kerak. Ushbu Bluetooth tugmachasini qo'shmasdan, Xcode ilovani ishga tushirishda sizga xato beradi.
2 -qadam: Bluetooth.swift fayli
Bu, shubhasiz, ushbu loyihadagi eng muhim fayl. Bu Bluetooth.swift fayli ichida BluetoothClass tipidagi global ob'ekt yaratiladi. Bu global ob'ekt paydo bo'lganda BluetoothHomeViewController tomonidan ishga tushiriladi.
Ob'ektning markaziy boshqaruvchisi ham, periferik o'zgaruvchisi ham bor. Bu o'zgaruvchilar aniqlangandan so'ng, ular ilovaning qolgan qismida ishlatiladi. O'z sinfimizni amalga oshirish orqali biz centralManager va periferiyaning bir nechta misollarini ishga tushirishdan qochamiz, shuning uchun qancha viewControllers yoki fayl qo'shilgan bo'lishidan qat'i nazar, biz bir xil ob'ektdan foydalanishimiz mumkin. Bundan tashqari, biz bitta ob'ektni bir nechta fayl va viewControllers -ga o'tkazish haqida tashvishlanmasligimiz kerak. Bu tartibsizlikka olib kelishi mumkin!
Bu fayl periferiya qurilmasini kashf qilish, ulanish va gaplashish uchun ishlatiladigan hamma narsani o'z ichiga oladi.
U shuningdek, rxUUID (qabul qilish) va txUUID (uzatish) bilan birga biz qidiradigan serviceUUID xizmatini o'z ichiga oladi. Agar siz ushbu ilova bilan boshqa modulni ishlatmoqchi bo'lsangiz, bu qiymatlarni siz foydalanayotgan yangi modulning UUID -lariga mos keladigan qilib o'zgartirish kifoya.
3 -qadam: ViewControllers
Bu ilova nihoyatda oddiy. Faqat ikkita ViewController mavjud: biri ma'lumotlarni oldinga va orqaga yuborish uchun, ikkinchisi tashqi qurilmalarni qidirish uchun.
BluetoothHomeViewController diqqat qilish kerak bo'lgan muhim narsalar:
- Biz Bluetooth obyektimiz tashqi qurilmani topishi va Bluetooth obyektimiz xabar olgani haqida bildirishnoma yaratamiz.
-
Biz qabul qilingan xabar xabarnomasiga obuna bo'lamiz.
Bu, asosan, bu viewController -da, qachonki biz biror narsani olsak, uzilishni keltirib chiqaradi. Keyin biz matn maydonida olganlarimizni ko'rsatamiz
ScannerViewController diqqat qilish kerak bo'lgan muhim narsalar:
-
Biz topilgan periferik xabarnomaga obuna bo'lamiz.
Bu viewController -da har qanday vaqtda bizning xizmatUUID -ga mos keladigan yangi periferiya topilganda, uzilish hosil qiladi, shunda biz mavjud tashqi qurilmalar ko'rsatiladigan jadvalni qayta yuklay olamiz
4 -qadam: Bu juda ko'p
Albatta, ilovada boshqa narsalar sodir bo'ladi. Ammo men faqat amalga oshirishda juda aniq bo'lmagan narsalarni tasvirlab berdim. Umid qilamanki, men aytmagan kodning qolgan qismi o'z -o'zidan tushunarli.
Shunga qaramay, bu kodni RN4871 tashqarisidagi boshqa BLE modullari bilan ishlatish mumkin. Bluetooth.swift faylining UUID -larini o'zgartirish kerak.
Iltimos, hamma narsani qanday amalga oshirilishini bilish uchun loyihani yuklab oling va kod bilan o'ynang. Kod juda oddiy, shuning uchun uni o'zingizning ilovangizga mos ravishda qo'shishingiz va o'zgartirishingiz mumkin.
Baxtli kodlash!
-ChocolateDrizzle
Tavsiya:
Telegram ilovasi yordamida oddiy IOTni qanday qilish kerak: 5 qadam
Telegram ilovasi yordamida oddiy IOT -ni qanday qilish kerak: Hozirgi avlod Internetida hamma narsa bor. Zamonaviy dunyoda narsalar Interneti katta rol o'ynaydi. Ko'p vaqtni behuda sarflamasdan, biz IOTning amaliy ishiga o'tishimiz mumkin. Bu erda biz LEDni boshqaramiz, shuningdek
Fre uchun sovuq yorug'lik (LED modullari): 9 qadam
Salqin yorug'lik uchun yorug'lik (LED modullari): men bu ko'rsatmaga ko'ra, yaxshi yorug'lik effektlari uchun kichik LED yoritgichlar yasadim, chunki ular qayta ishlangan batareyalardan foydalangan, chunki u bepul edi, lekin siz xohlagan batareyadan foydalanishingiz mumkin
DIY modullari yordamida uyni avtomatlashtirishni boshlashning juda oddiy usuli: 6 qadam
DIY modullaridan foydalangan holda uyni avtomatlashtirishni boshlashning juda oddiy usuli: men uy yordamchisiga bir nechta DIY sensorlarini qo'shishga qaror qilganimda, juda hayron bo'ldim. ESPHome -dan foydalanish juda oddiy va bu postda biz GPIO pinini boshqarishni, shuningdek, haroratni olishni o'rganamiz. namlik ma'lumotlari simsiz tarmoqdan
OpenWrt routeringizga masofadan kirish uchun Android/iOS ilovasi: 11 qadam
OpenWrt routeringizga masofadan kirish uchun Android/iOS ilovasi: Men yaqinda yangi yo'riqnoma sotib oldim (Xiaomi Mi Router 3G). Va, albatta, bu yangi, ajoyib uskuna meni ushbu loyihada ishlashga ilhomlantirdi;)
Non taxtasi uchun mos keladigan SMD chiplaridan PIC va AVR modullari: 7 qadam
Non taxtasi uchun mos keladigan SMD chiplaridan PIC va AVR modullari: Vaqti-vaqti bilan siz non panelida sinab ko'rmoqchi bo'lgan sirtga o'rnatilgan (SMD) formadagi ba'zi mikro-nazoratchilarni uchratasiz! Siz ushbu chipning DIL versiyasini olish uchun ko'p harakat qilardingiz, ba'zida u mavjud bo'lmaydi. Oxirgi v