Innholdsfortegnelse:
- Trinn 1: De tillatte BLE -tillatelsene
- Trinn 2: Bluetooth.swift -filen
- Trinn 3: ViewControllers
- Trinn 4: Det er ganske mye det
Video: Enkel IOS -app for BLE -moduler: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Denne instruksen går gjennom hvordan du kan lage en iOS -app med helt grunnleggende funksjonalitet. Denne instruksen vil ikke gå gjennom hele prosessen med å lage en iOS BLE -app. Det vil bare gi en oversikt over noen viktige elementer i appen på høyt nivå. Derfra kan du forhåpentligvis laste ned prosjektet og leke med koden selv for å lære mer om implementeringen.
Jeg kommuniserer med en RN4871 BLE -modul i prosjektet mitt. Spesielt RN4871 Click Board som er laget av MikroElektronika. Disse Click Boards finnes på Mikro -nettstedet så vel som andre distributørnettsteder som DigiKey, Mouser, etc. Disse Click Boards er riktignok dyrere enn andre moduler du kan finne, men jeg liker å bruke dem i mine prosjekter fordi de er klare til å overføre og motta data uten å måtte ha noen konfigurasjon. Jeg har hatt altfor mange ganger hvor jeg har kjøpt en billig $ 5 -modul online og måtte lese hele databladet for å finne ut hvordan jeg konfigurerer det. For meg er det omtrent 2-4 timers arbeid med å prøve å konfigurere modulen før jeg kan sende data! Disse klikkbrettene ser ut til å fungere rett ut av esken uten hodepine, så de får tommelen opp fra meg!
Selv om denne iOS -appen er laget for å kommunisere med RN4871 og RN4870, kan den samme koden også brukes til andre BLE -moduler (med noen kodeendringer selvfølgelig).
Bruk gjerne koden slik du vil! Jeg er ikke en profesjonell apputvikler, så tilgi meg hvis noe i det får deg til å grine:)
Trinn 1: De tillatte BLE -tillatelsene
En viktig funksjon er den tillatte tillatelsen til å bruke BLE i appen.
Kildekoden til denne appen har en tilleggsnøkkel i filen info.plist. Nøkkelen til personvern - Bluetooth perifer bruk Beskrivelse må legges til for å bruke BLE. Uten å legge til denne Bluetooth -nøkkelen, vil Xcode gi deg en feil når du prøver å kjøre appen.
Trinn 2: Bluetooth.swift -filen
Dette er uten tvil den viktigste filen i dette prosjektet. I denne Bluetooth.swift -filen opprettes et globalt objekt av typen BluetoothClass. Dette globale objektet initialiseres av BluetoothHomeViewController når det vises.
Objektet inneholder både en centralManager -variabel og en perifer variabel. Når disse variablene er definert, brukes de i resten av appen. Gjennom implementering av vår egen klasse, unngår vi å måtte initialisere flere forekomster av centralManager og perifer, og derfor kan vi bruke det samme objektet, uansett hvor mange viewControllers eller filer som er lagt til. I tillegg trenger vi ikke bekymre deg for å sende et enkelt objekt til flere filer og viewControllers. Det kan bli rotete!
Denne filen inneholder alt som brukes til å oppdage, koble til og snakke med en perifer enhet.
Den inneholder også serviceUUID som vi vil søke etter sammen med rxUUID (motta) og txUUID (overføre). Hvis du vil bruke en annen modul med denne appen, er alt du trenger å gjøre å endre disse verdiene for å matche UUID -ene til den nye modulen du bruker.
Trinn 3: ViewControllers
Denne appen er ekstremt enkel. Det er bare to ViewControllers: en for å sende data frem og tilbake, og en for å søke etter eksterne enheter.
BluetoothHomeViewController viktige ting å merke seg:
- Vi oppretter varsler for når vårt Bluetooth -objekt finner en perifer enhet og når vårt Bluetooth -objekt mottar en melding.
-
Vi abonnerer på mottatt melding.
Dette genererer i utgangspunktet et avbrudd, når vi i denne viewController når som helst vi mottar noe. Vi viser deretter det vi mottok i tekstfeltet
ScannerViewController viktige ting å merke seg:
-
Vi abonnerer på den funnet perifere varslingen.
Dette skaper et avbrudd, når i denne viewController, når som helst det blir funnet en ny perifer enhet som matcher vår serviceUUID, slik at vi kan laste inn tabellen som viser tilgjengelige eksterne enheter
Trinn 4: Det er ganske mye det
Selvfølgelig er det andre ting som skjer i appen. Imidlertid beskrev jeg bare de tingene som kanskje ikke er veldig klare i implementeringen. Forhåpentligvis er resten av koden som jeg ikke snakket om, selvforklarende.
Igjen skal denne koden kunne brukes med andre BLE -moduler utenfor RN4871. Du bør ganske enkelt endre UUID -er inne i Bluetooth.swift -filen.
Last ned prosjektet og lek med koden selv for å lære nøyaktig hvordan alt er implementert. Koden er veldig enkel, slik at du kan legge til og endre den for å passe din egen applikasjon.
Glad koding!
-ChocolateDrizzle
Anbefalt:
Enkel og enkel Spider-Man Web-Shooter: 12 trinn
Enkel og enkel Spider-Man Web-Shooter: Har du sett en Spider-Man-film? En Spider-Man-tegneserie? Noe uklart Spider-Man-relatert? Spider-Man er tilsynelatende overalt. Hvorfor ikke lage en enkel web-shooter? Etter litt øvelse laget jeg et design av husmaterialer som kunne lages
(Enkel) enkel måte å få analog/pwm -lyd fra Raspberry PI Zero og også tilkobling til Crt TV: 4 trinn
(Enkel) enkel måte å få analog/pwm -lyd fra Raspberry PI Zero og også tilkobling til Crt TV: Her har jeg brukt en enkleste metode for å mate lyd til en tv sammen med video fra en annen side
Enkel Bridge to BLE (Bluetooth Low Energy) Bridge: 9 trinn (med bilder)
Enkel WiFi til BLE (Bluetooth Low Energy) Bridge: Oppdatering 4. desember 2017 - reviderte Feather nRF52 -skisser og feilsøkingstips. Lagt til bilder av bro montert i eske. Dette enkle prosjektet gir WiFi -tilgang til alle Bluetooth Low Energy (BLE) moduler som implementerer Nordic's UART med TX Notify. Det
En virkelig enkel/enkel/ikke komplisert måte å få mennesker/mennesker/dyr/roboter til å se ut som om de har en veldig kul/lys varmesyn (farge du velger) ved hjelp av GIMP: 4 trinn
En virkelig enkel/enkel/ikke komplisert måte å få mennesker/mennesker/dyr/roboter til å se ut som om de har en veldig kul/lys varmesyn (farge du velger) Ved å bruke GIMP: Les … tittelen
Guitar Amp Tilt Stand - "African Chair" Design - Enkel, liten, sterk, enkel, gratis eller ekte billig: 9 trinn
Guitar Amp Tilt Stand - "African Chair" Design - Enkel, liten, sterk, enkel, gratis eller ekte billig: Guitar Amp Tilt Stand - For lett - enkel, liten, sterk, gratis eller skikkelig billig. For alle forsterkere, til og med store skap med separat hode. Bare lag brett og rør i størrelsen, og du trenger for nesten alt utstyr du ønsker