INHOUDSOPGAWE:

Eenvoudige IOS -app vir BLE -modules: 4 stappe
Eenvoudige IOS -app vir BLE -modules: 4 stappe

Video: Eenvoudige IOS -app vir BLE -modules: 4 stappe

Video: Eenvoudige IOS -app vir BLE -modules: 4 stappe
Video: 90% of Diabetes Would be REVERSED [If You STOP These Foods] 2024, November
Anonim
Eenvoudige IOS -app vir BLE -modules
Eenvoudige IOS -app vir BLE -modules

Hierdie instruksies beskryf hoe u 'n iOS -app met baie basiese funksies kan skep. Hierdie instruksies gaan nie deur die hele proses om 'n iOS BLE -app te maak nie. Dit gee slegs 'n hoë vlak oorsig van enkele belangrike elemente in die app. Van daar af kan u hopelik die projek aflaai en self met die kode speel om meer te wete te kom oor die implementering.

Ek kommunikeer met 'n RN4871 BLE -module in my projek. Spesifiek die RN4871 Click Board wat gemaak is deur MikroElektronika. Hierdie klikborde kan gevind word op die Mikro -webwerf sowel as op ander verspreiderwebwerwe, soos DigiKey, Mouser, ens. Hierdie klikborde is weliswaar duurder as ander modules wat u kan vind, maar ek gebruik dit graag in my projekte omdat uit die boks is hulle gereed om data te stuur en te ontvang sonder om enige opset te benodig. Ek het al te veel keer 'n goedkoop $ 5 -module aanlyn gekoop en die hele datablad moes lees om uit te vind hoe ek dit moet instel. Vir my is dit ongeveer 2-4 uur se werk om die module te konfigureer voordat ek selfs data kan stuur! Dit lyk asof hierdie klikborde uit die boks werk, sonder hoofpyn, sodat hulle 'n duim van my af kry!

Alhoewel hierdie iOS -app gemaak is om met die RN4871 en RN4870 te kommunikeer, kan dieselfde kode ook vir ander BLE -modules gebruik word (natuurlik met 'n mate van kodewysiging).

Gebruik die kode soos u wil! Ek is nie 'n professionele app -ontwikkelaar nie, vergewe my as iets daarin u laat skrik:)

Stap 1: Die bygevoegde BLE -toestemmings

Die bygevoegde BLE -toestemmings
Die bygevoegde BLE -toestemmings

Een belangrike kenmerk is die bykomende toestemming om BLE binne die app te gebruik.

Die bronkode van hierdie app bevat 'n bykomende sleutel in die info.plist -lêer. Die sleutel vir privaatheid - Bluetooth -perifere gebruiksbeskrywing moet bygevoeg word om BLE te kan gebruik. Sonder om hierdie Bluetooth -sleutel by te voeg, gee Xcode u 'n fout as u die app probeer hardloop.

Stap 2: Die Bluetooth.swift -lêer

Dit is waarskynlik die belangrikste lêer in hierdie projek. Binne hierdie Bluetooth.swift -lêer word 'n globale voorwerp van die tipe BluetoothClass geskep. Hierdie globale voorwerp word geïnisialiseer deur die BluetoothHomeViewController wanneer dit verskyn.

Die voorwerp bevat beide 'n centralManager -veranderlike en 'n perifere veranderlike. Sodra hierdie veranderlikes gedefinieer is, word dit in die res van die app gebruik. Deur ons eie klas te implementeer, vermy ons dat ons verskeie gevalle van die centralManager en die randapparaat moet initialiseer, daarom kan ons dieselfde voorwerp gebruik, ongeag hoeveel viewControllers of lêers daarby gevoeg word. Boonop hoef ons nie bekommerd te wees oor die oordrag van 'n enkele voorwerp na verskeie lêers en viewControllers nie. Dit kan morsig raak!

Hierdie lêer bevat alles wat gebruik word om 'n randapparaat te ontdek, aan te sluit en te praat.

Dit bevat ook die serviceUUID waarna ons saam met die rxUUID (ontvang) en txUUID (stuur) sal soek. As u 'n ander module met hierdie app wil gebruik, hoef u slegs hierdie waardes te verander om aan te pas by die UUID's van die nuwe module wat u gebruik.

Stap 3: Die ViewControllers

Hierdie app is uiters eenvoudig. Daar is slegs twee ViewControllers: een om data heen en weer te stuur, en een om na randapparatuur te soek.

BluetoothHomeViewController belangrike dinge om op te let:

  • Ons maak kennisgewings vir wanneer ons Bluetooth -voorwerp 'n randapparaat vind en wanneer ons Bluetooth -voorwerp 'n boodskap ontvang.
  • Ons teken in op die kennisgewing wat ontvang is.

    Dit genereer basies 'n onderbreking, as ons in hierdie viewController altyd iets ontvang. Ons wys dan wat ons ontvang het in die teksveld

ScannerViewController belangrike dinge om op te let:

  • Ons teken in op die perifere kennisgewing wat gevind is.

    Dit skep 'n onderbreking, wanneer daar in hierdie viewController altyd 'n nuwe randapparaat gevind word wat by ons serviceUUID pas, sodat ons die tabel met die beskikbare randapparatuur kan herlaai

Stap 4: Dit is baie goed

Daar is natuurlik ander dinge wat binne die app aan die gang is. Ek het egter slegs die dinge beskryf wat in die implementering moontlik nie baie duidelik is nie. Hopelik verklaar die res van die kode waaroor ek nie gepraat het nie.

Hierdie kode moet weer saam met ander BLE -modules buite die RN4871 gebruik kan word. U moet eenvoudig die UUID's in die Bluetooth.swift -lêer verander.

Laai die projek af en speel self met die kode om presies te leer hoe alles geïmplementeer word. Die kode is baie eenvoudig, sodat u dit kan byvoeg en aanpas by u eie toepassing.

Gelukkige kodering!

-Sjokolade Drup

Aanbeveel: