Palyginus „Mvvmcross.plugin.ble“ ir „Pillin.ble“ našumą, apima keletą aspektų, įskaitant suderinamumą, funkcionalumą ir naudojimo scenarijus, nagrinėjimą.
mvvmcross.plugin.ble
- Suderinamumas: Šis papildinys skirtas įvairių platformų kūrimui, naudojant „MVVMCross Framework“. Tai palaiko „Android“, „iOS“, „MacOS“ ir „UWP“, todėl jis yra universalus projektams, kuriems reikalingas „Bluetooth Low Energy“ (BLE) funkcijas keliose platformose [1] [4]. Tai suderinama su įvairiomis .NET versijomis, įskaitant .NET standartą ir .NET Core [1].
- Funkcionalumas: Tai suteikia prieigą prie BLE paslaugų, registruojant „iBluetoothle“ ir „iAdapter“ kaip tingus inicijuotas singletonas, kurį galima išspręsti arba įšvirkščiami į MVVMCross paslaugas [4]. Tai leidžia lengvai integruoti į MVVMCROSS pagrįstas programas.
- Našumas: našumas paprastai yra tinkamas programoms, kurioms reikalingas „BLE“ ryšys MVVMCross ekosistemoje. Tačiau konkrečios našumo metrikos, tokios kaip greitis ar latencija, nėra aiškiai dokumentuojamos, ir jie gali priklausyti nuo pagrindinės aparatinės įrangos ir diegimo informacijos.
papildinys.ble
-Suderinamumas: „Pillin.ble“ yra bendresnės paskirties BLE papildinys, kurį galima naudoti įvairiuose .NET pagrįstuose projektuose, įskaitant .NET Maui programas [3]. Jis palaiko „Android“ ir „iOS“ platformas ir yra suderinamas su .NET standartiniu ir .NET Core [3].
- Funkcionalumas: Tai yra paprasta API, skirta atrasti, prisijungti prie BLE įrenginių ir bendrauti su jais. Jis plačiai naudojamas „Xamarin“ ir .NET Maui programose BLE funkcionalumui [3].
- Našumas: „Pillin.ble“ našumas paprastai yra patikimas pagrindinėms BLE operacijoms, tokioms kaip nuskaitymas, prijungimas ir skaitymo/rašymo charakteristikos. Tačiau, kaip ir mvvmcross.plugin.ble, konkreti našumo metrika nėra gerai dokumentuota ir gali skirtis atsižvelgiant į programos reikalavimus ir aparatinės įrangos galimybes.
palyginimas
- Integracijos sudėtingumas: mvvmcross.plugin.ble yra labiau integruotas su „MVVMCross“ sistema, todėl lengviau naudoti MVVMCross programas. Kita vertus, „Pupilin.ble“ yra universalesnis ir gali būti naudojamas platesniame .NET pagrįstų projektų asortimente.
-Kryžminio platformos palaikymas: abu papildiniai palaiko įvairių platformų kūrimą, tačiau mvvmcross.plugin.ble yra specialiai sukurtas MVVMCross programoms, kurios gali apriboti jo naudojimą ne MVVMCross projektuose.
- Našumo optimizavimas: Siekiant optimizuoti našumą, abiem papildiniams gali būti naudinga konkrečios aparatinės įrangos optimizavimas (pvz., „Bluetooth 5“ naudojimas greitesniam duomenų perdavimui) ir programinės įrangos optimizavimui (pvz., Ryšio prioritetų ir MTU dydžių koregavimas) [5].
Apibendrinant galima pasakyti, kad nors abu papildiniai teikia patikimą BLE funkcionalumą, „Mvvmcross.plugin.ble“ yra optimizuotas naudoti MVVMCROSS sistemoje, siūlant sklandų integraciją su MVVMCross paslaugomis. „Pillin.ble“ yra universalesnis ir gali būti naudojamas platesniame .NET pagrįstų projektų asortimente, įskaitant .NET Maui programas. Tikėtina, kad našumo skirtumai bus minimalūs, nebent būtų taikomi konkretūs optimizacijos, atsižvelgiant į programos reikalavimus ir aparatinės įrangos galimybes.
Citatos:[1] https://www.nuget.org/packages/mvvmcross.plugin.ble/2.2.0-pre5
[2] https://github.com/don/cordova-plugin-ble-central
[3] https://learn.microsoft.com/en-us/answers/questions/1518375/which-package-huld-itilie-for-bluetooth-low-e
[4] https://www.nuget.org/packages/mvvmcross.plugin.ble/
[5] https://github.com/don/cordova-plugin-ble-central/issues/753
[6] https://stackoverflow.com/questions/69735708/xamarin-plugin-ble-why-data-read-doesnt-change
[7] https://github.com/mrozema/xamarin-bluetooth-le
[8] https://stackoverflow.com/questions/76523527/xamarin-forms-ble-plugin-getservice-getdescriprior-met-get- charactictics-met