Mvvmcross.plugin.ble ja plugin.ble kasutatakse nii Bluetooth -madala energia (BLE) seadme avastamiseks, kuid nad käsitlevad seda protsessi erinevalt nende arhitektuuri ja rakendamise põhjal.
mvvmcross.plugin.ble
Mvvmcross.plugin.ble on loodud töötama mvvmcrossi raamistikus, pakkudes struktureeritud lähenemisviisi seadme avastamiseks. See registreerib `ibluetoothle` ja iadapter" kui laiskade initsialiseeritud singletonid, võimaldades arendajatel lahendada need teenused oma vaatemudelites või muudes komponentides. See pistikprogramm toetab Androidi, iOS -i, MACOS -i ja Windowsi platvorme.
MVVMCROSS.PLUGIN.BLE abil kasutades seadmeid kasutate tavaliselt adapteri juurde pääsemiseks `crossbluetoothle.current.adapter`. Spetsiifilisi seadmete skannimise või avastamise meetodeid ei ole pistikprogrammi dokumentatsioonis selgesõnaliselt üksikasjalik. Selle asemel tugineb see aluseks olevale `CrossBluetoothle 'rakendusele, mida tavaliselt kasutatakse Xamariinipõhistes projektides.
Pistikprogramm võimaldab teil kontrollida Bluetoothi olekut ja kuulata olekumuudatusi, mis on kasulik seadme avastamise haldamiseks, mis põhineb praegusel Bluetooth -olekul. Tegeliku skaneerimiseks kasutaksite tavaliselt meetodeid, mis sarnanevad vanilli "CrossBluetoothle" rakendusega, näiteks adapterile juurdepääsu ja selle meetodite kasutamist skannimise alustamiseks.
pistikprogramm.ble (Crossbluetoothle)
Plugin.ble, mida sageli nimetatakse CrossBluetoothleiks, on üldisem pistikprogramm BLE funktsionaalsusele pääsemiseks mitmel platvormil, sealhulgas Android ja iOS. See pakub sirgjoonelist viisi BLE -seadmete avastamiseks, kasutades `crossbluetothle.current.adapter` skaneerimise alustamiseks.
CrossBluetoothle'iga seadmete avastamiseks kasutaksite skaneerimise algatamiseks tavaliselt adapteri meetodeid. Pistikprogramm toetab kõigi reklaamitud seadmete, konkreetsete reklaamitud teenustega seadmete või kohandatud filtriga vastavate seadmete avastamist. Kui seadmed on avastatud, saate nendega ühenduse luua, uurida nende teenuseid ja omadusi ning teha lugemis-/kirjutamisoperatsioone või tellida teatisi.
Seadme avastamise osas pakub CrossBluetoothle otsesemat kontrolli skaneerimisprotsessi üle võrreldes mvvmcross.plugin.ble. See võimaldab arendajatel täpsustada filtreid konkreetsete teenuste või omadustega seadmete avastamiseks, muutes selle mitmekülgsemaks rakenduste jaoks, mis peavad suhtlema mitmesuguste BLE -seadmetega.
Võrdlus
- Arhitektuur: mvvmcross.plugin.ble on spetsiaalselt loodud kasutamiseks MVVMcrossi raamistikus, pakkudes teenuseid, mida saab süstida vaatemudelitesse. Plugin.ble (crossbluetoothle) on üldisem ja seda saab kasutada igas Xamariinipõhises projektis.
- Seadme avastamine: mõlemad pistikprogrammid tuginevad seadme avastamise aluseks olevale BLE -rakendusele. CrossBluetoothle pakub aga otsest juurdepääsu skaneerimismeetoditele ja filtritele, muutes avastusprotsessi kohandamise lihtsamaks. Mvvmcross.plugin.ble'i dokumentatsioon ei kirjelda selgesõnaliselt skaneerimise meetodeid, mis viitab sellele, et see võib arendajale tugineda aluseks oleva CrossBluetoothle funktsionaalsuse kasutamisel.
- Platvormi tugi: mõlemad pistikprogrammid toetavad Androidi ja iOS-i, kuid mvvmcross.plugin.ble mainib ka tuge MACOS-i ja Windowsi jaoks, mis võib olla kasulik nende platvormide jaoks suunatud platvormidevaheliste rakenduste jaoks.
Kokkuvõtlikult võib öelda, et kuigi mõlemad pistikprogrammid võimaldavad BLE -seadme avastamist, on mvvmcross.plugin.ble.ble rohkem integreeritud mvvmcrossi raamistikuga ja võib vajada skaneerimiseks täiendavat seadistamist või tuginemist. Pistikprogramm.ble (CrossBlueToothle) pakub seadme avastamisele sirgjoonelisemat lähenemisviisi, millel on otsene juurdepääs skaneerimismeetoditele ja filtritele.
Tsitaadid:[1] https://www.nuget.org/packages/mvvmcross.plugin.ble/
[2] https://github.com/don/cordova-plugin-ble-cenral
[3] https://github.com/xabre/xamarin-bluetooth-le/issues/524
[4] https://github.com/mrozema/xamarin-bluetooth-le
[5] https://developer.android.com/developy/connectivity/bluetooth/ble/find-ble-devices
[6] https://punchthrough.com/ble-connectivity-architecture/
[7] https://smstuebe.de/2016/05/13/blev1.0/
[8] https://github.com/dotnet-bluetooth-le/dotnet-bluetooth-le
]