Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Hvordan MVVMCROSS.PLUGIN.BLE HANDLER DEMENTER DISKOVERING sammenlignet med Plugin.BLE


Hvordan MVVMCROSS.PLUGIN.BLE HANDLER DEMENTER DISKOVERING sammenlignet med Plugin.BLE


Mvvmcross.plugin.ble og plugin.ble brukes begge til Bluetooth Low Energy (BLE) enhetsoppdagelse, men de håndterer denne prosessen annerledes basert på deres arkitektur og implementering.

mvvmcross.plugin.ble

Mvvmcross.plugin.ble er designet for å fungere innenfor mvvmcross -rammen, og gir en strukturert tilnærming til BLE -enhetsoppdagelse. Den registrerer `iBluetoothle` og` iadapter` som latinitialiserte singletoner, slik at utviklere kan løse disse tjenestene i sine synsmodeller eller andre komponenter. Denne pluginen støtter Android, iOS, MacOS og Windows -plattformer.

For å oppdage enheter som bruker mvvmcross.plugin.ble, bruker du vanligvis `crossbluetoothle.current.adapter` for å få tilgang til adapteren. Spesifikke metoder for skanning eller oppdagelse av enheter er imidlertid ikke eksplisitt detaljert i pluginens dokumentasjon. I stedet er det avhengig av den underliggende implementeringen av `Crossbluetoothle`, som ofte brukes i Xamarin-baserte prosjekter.

Pluginen lar deg sjekke Bluetooth -tilstanden og lytte etter tilstandsendringer, noe som er nyttig for å håndtere Device Discovery basert på gjeldende Bluetooth -status. For faktisk skanning vil du vanligvis bruke metoder som ligner på de i vanilje -implementeringen av vaniljen, for eksempel å få tilgang til adapteren og bruke metodene til å starte skanning.

Plugin.ble (Crossbluetoothle)

Plugin.ble, ofte referert til som Crossbluetoothle, er en mer generisk plugin for tilgang til BLE -funksjonalitet på flere plattformer, inkludert Android og iOS. Det gir en enkel måte å oppdage BLE -enheter ved å bruke `crossbluetoothle.current.adapter` for å starte skanning.

For å oppdage enheter med Crossbluetoothle, vil du vanligvis bruke adapterens metoder for å sette i gang en skanning. Pluginen støtter å oppdage alle annonserte enheter, enheter med spesifikke annonserte tjenester eller enheter som samsvarer med et tilpasset filter. Når enheter er oppdaget, kan du koble til dem, utforske deres tjenester og egenskaper og utføre lese-/skriveoperasjoner eller abonnere på varsler.

Når det gjelder oppdagelse av enheter, tilbyr CrossBluetoothle mer direkte kontroll over skanneprosessen sammenlignet med mvvmcross.plugin.ble. Det gjør det mulig for utviklere å spesifisere filtre for å oppdage enheter med spesifikke tjenester eller egenskaper, noe som gjør det mer allsidig for applikasjoner som trenger å samhandle med en rekke BLE -enheter.

Sammenligning

- Arkitektur: mvvmcross.plugin.ble er spesielt designet for bruk i MVVMCROSS -rammeverket, og leverer tjenester som kan injiseres i visningsmodeller. Plugin.ble (Crossbluetoothle) er mer generisk og kan brukes i et hvilket som helst Xamarin-basert prosjekt.

- Enhetsoppdagelse: Begge plugins er avhengige av den underliggende BLE -implementeringen for Device Discovery. Imidlertid gir Crossbluetoothle mer direkte tilgang til skanningsmetoder og filtre, noe som gjør det lettere å tilpasse oppdagelsesprosessen. MVVMCROSS.PLUGIN.BLEs dokumentasjon detaljerer ikke eksplisitt skanningsmetoder, noe som antyder at den kan stole på at utvikleren bruker den underliggende kryssbluetoothle -funksjonaliteten.

- Plattformstøtte: Begge plugins støtter Android og iOS, men MVVMCROSS.PLUGIN.BLE nevner også støtte for macOS og Windows, noe som kan være gunstig for applikasjoner på tvers av plattformer som er rettet mot disse plattformene.

Oppsummert, mens begge plugins muliggjør BLE -enhetsoppdagelse, er mvvmcross.plugin.ble mer integrert med MVVMCROSS -rammeverket og kan kreve ytterligere oppsett eller avhengighet av underliggende kryssingsfunksjonalitet for skanning. Plugin.ble (Crossbluetoothle) tilbyr en mer enkel tilnærming til enhetsoppdagelse med direkte tilgang til skanningsmetoder og filtre.

Sitasjoner:
[1] https://www.nuget.org/packages/mvvmcross.plugin.ble/
[2] https://github.com/don/cordova-plugin-le-sentral
[3] https://github.com/xabre/xamarin-bluetooth-le/issues/524
[4] https://github.com/mrozema/xamarin-bluetooth-le
[5] https://developer.android.com/develop/connectivity/bluetooth/ble/find-ble-devices
[6] https://punchthrough.com/ble-connectivity-arkitecture/
[7] https://smstuebe.de/2016/05/13/blev1.0/
[8] https://github.com/dotnet-bluetooth-le/dotnet-bluetooth-le
[9] https://stackoverflow.com/questions/38327176/xamarin-forms-plugins-blemvvmcross-plugins-ble