Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Vai es varu izmantot gan spraudni, gan mvvmcross.plugin.ble tajā pašā projektā


Vai es varu izmantot gan spraudni, gan mvvmcross.plugin.ble tajā pašā projektā


Izmantojot gan spraudni, gan mvvmcross.plugin.ble vienā un tajā pašā projektā ir tehniski iespējams, taču tā, iespējams, nav visefektīvākā vai ieteicamā pieeja. Lūk, kāpēc:

1. Mērķis un funkcionalitāte:
- spraudnis.ble ir savstarpējas platformas spraudnis, kas paredzēts piekļuvei Bluetooth zemas enerģijas (BLE) funkcionalitātei. Tas ir piemērots projektiem, kuriem nav nepieciešama MVVM arhitektūra vai papildu funkcijas, ko nodrošina MVVMCROSS.
- MVVMCROSS.PLUGIN.BLE, no otras puses, ir īpaši paredzēts projektiem, izmantojot MVVMCROSS sistēmu. Tas integrē BLE funkcionalitāti MVVM arhitektūrā, ļaujot veikt atkarības injekciju un citas MVVMCROSS funkcijas.

2. Atkarība un pārklāšanās:
- mvvmcross.plugin.ble faktiski atsaucas spraudni.ble iekšēji. Tas nozīmē, ka, ja jūs izmantojat mvvmcross.plugin.ble, jūs netieši izmantojat arī spraudni.ble. Tomēr abu skaidru izmantošana var izraisīt nevajadzīgu sarežģītību un iespējamos konfliktus.

3. Lietošana un integrācija:
- Ja jūsu projekts ir veidots ar MVVMCross, izmantojot mvvmcross.plugin.ble ir vienkāršāks, jo tas labi integrējas ar MVVM modeli un ļauj veikt atkarības injekciju. Jūs varat atrisināt iBluetoothle un Iadapter pakalpojumus, izmantojot MVVMCROSS SOK konteineru.
- Ja vēlaties vienkāršāku pieeju, kas nav MVVM, spraudnis.Ble varētu būt pietiekams. Tomēr, ja jūs nolemjat izmantot abus, pārliecinieties, ka rūpīgi pārvaldāt viņu gadījumus un funkcijas, lai izvairītos no konfliktiem.

4. potenciālie jautājumi:
- Abu spraudņu izmantošana var izraisīt neskaidrības, pārvaldot gadījumus un rīkojoties ar BLE operācijām. Jūs varētu beigties ar vairākiem adapteriem vai BLE pakalpojumiem, kas varētu izraisīt negaidītu izturēšanos vai kļūdas.

5. Ieteikums:
- Ja jūsu projekts izmanto MVVMCross, pieturieties ar mvvmcross.plugin.ble, lai iegūtu konsekvenci un ērtu integrāciju.
- Ja jūsu projektā neizmanto MVVMCross, spraudnis.ble ir vienkāršāka izvēle.
- Izvairieties no abām lietošanas, ja vien jums nav īpašas prasības, kas prasa to kombinēto lietošanu, un nodrošiniet, lai jūs rūpīgi rīkotos ar viņu integrāciju.

Rezumējot, lai gan ir tehniski iespējams izmantot abus spraudņus vienā un tajā pašā projektā, tas parasti nav ieteicams, ja vien jums nav pārliecinošs iemesls to darīt. Izvēlei jābalstās uz jūsu projekta arhitektūru un īpašajām vajadzībām.

Atsauces:
[1.]
[2] https://www.mvvmcross.com/documentation/advanced/customing-using-app-and-setup
[3] https://www.nuget.org/packages/mvvmcross.plugin.ble/
[4] https://forum.ionicframework.com/t/both-ble-luetoothle-plugins-seem-not-to-be-loaded-at-all/176776
[5] https://www.nuget.org/packages/mvvmcross.plugin.ble/2.2.0-pre5
[6] https://www.npmjs.com/package/cordova-plugin-bluetoothle
[7] https://github.com/mrozema/xamarin-luetooth-le
[8] https://community.qlik.com/t5/qlikview-app-dev/multiple-versions-of-similar-data-for-all-all-in-data-model/td-p/468796
[9] https://stackoverflow.com/questions/38327176/xamarin-forms-plugins-ble-mvvmcross-plugins-ble