„MVVMCross“ papildiniai yra galingas įrankis, leidžiantis išplėsti įvairių platformų programų, sukurtų naudojant „MVVMCross“ sistemą, funkcionalumą. Šie papildiniai leidžia kūrėjams lengvai integruoti įvairias funkcijas į savo programas, tokias kaip failų operacijos, tinklo ryšys, vietos vietos ir dar daugiau. Čia yra keletas praktinių „MVVMCross“ papildinių naudojimo pavyzdžių:
1. Failo papildinys **
Failo papildinys suteikia prieigą prie „System.io“ failų manipuliavimo metodų. Šis papildinys yra naudingas skaitant ir rašant failus, o tai yra būtina norint saugoti ir gauti duomenis daugelyje programų. Naudodamiesi šiuo papildiniu, kūrėjai gali tvarkyti failų operacijas nepriklausomai nuo platformos.Norėdami naudoti failų papildinį, paprastai pridėtumėte jį prie savo projekto per „NuGet“, tada užsiregistruokite IOC konteineryje programos sąrankos metu. Tada galite įšvirkšti failų paslaugą į savo „View“ modelius ar kitas klases, kad atliktumėte failų operacijas.
2. „Bluetooth Low Energy“ (BLE) papildinys **
„Bluetooth Low Energy“ papildinys leidžia programoms bendrauti su „Bluetooth“ įrenginiais. Šis papildinys registruoja „iBluetoothle“ ir „iAdapter“ kaip tingus inicijuotas singletonas, todėl lengva išspręsti ir įšvirkšti šias paslaugas į jūsų vaizdo modelius ar kitus komponentus.Pvz., Galite naudoti šį papildinį norėdami nuskaityti netoliese esančius įrenginius, prisijungti prie jų ir keistis duomenimis. Papildinyje taip pat pateikiami „Bluetooth“ būsenos pakeitimų stebėjimo įvykiai, leidžiantys jūsų programai dinamiškai reaguoti į „Bluetooth“ ryšio būsenos pakeitimus.
3. Lokalizacijos papildinys **
Nors paieškos rezultatuose nėra aiškiai paminėta, lokalizacija yra bendras reikalavimas daugeliui programų. „MVVMCross“ galima išplėsti su papildiniais, kad būtų galima atlikti lokalizacijos užduotis, tokias kaip teksto ar formatavimo datų ir numerių vertimas pagal vartotojo lokalę.4. „Push Notifications“ papildinys **
„MVVMCross“ papildinys „Pushwoosh“ yra papildinio, kuris integruoja „Push Notifice“ paslaugas į jūsų programą, pavyzdys. Tai leidžia vartotojams siųsti tikslinius pranešimus, sustiprinti vartotojų įsitraukimą ir laiku pateikti atnaujinimus.Norėdami naudoti tokį papildinį, paprastai jį užregistruosite inicijuodami programą, o tada naudotumėte pateiktą API, kad tvarkytumėte „Push Publications“ savo „View“ modeliuose ar paslaugose.
5. Vaizdo įkėlimo papildinys (ffimageloading) **
„Ffimageloading“ papildinys yra naudojamas efektyviam vaizdo įkėlimui ir talpykloje. Tai gerai integruojama su „MVVMCross“ duomenų įrišimo galimybėmis, leidžiančiomis lengvai rodyti vaizdus jūsų rodiniuose, tuo pačiu panaudojant duomenų įrišimą dinaminiams atnaujinimams.Šis papildinys yra ypač naudingas programoms, kurioms reikia tvarkyti daugybę vaizdų, nes tai padeda pagerinti našumą talpyklos kaupimo vaizduose ir įkeliant juos asinchroniškai.
kurti savo papildinius
„MVVMCross“ taip pat leidžia kurti pasirinktinius papildinius. Norėdami tai padaryti, sukuriate biblioteką, kuri nurodo pagrindinį „MVVMCross“ paketą, pridėkite tipą, kuris paveldi iš „imvxplugin“, ir komentuokite jį su „mvxpluginattribute“. Taikydami papildinio metodą, jūs registruojate visas būtinas paslaugas ar klases naudodami IOC konteinerį.Šis lankstumas reiškia, kad galite įtraukti bet kokią pasirinktinę funkciją į daugkartinio naudojimo papildinį, todėl lengvai dalijasi kodu keliuose projektuose arba netgi paskirstyti jį kitiems kūrėjams.
Apskritai, „MVVMCross“ papildiniai suteikia patikimą būdą išplėsti ir pritaikyti jūsų įvairių platformų programas, todėl lengviau integruoti įvairias funkcijas ir funkcijas.
Citatos:[1] https://dev.to/christian1006/creating-cross-platform-xamarin-application-sing-the-mvvmcross-framework-2920
[2] https://www.mvvmcross.com/documentation/plugins/plugins-development
[3] https://www.mvvmcross.com/documentation/fundamentals/inversion-of-control-ioc
[4] https://github.com/mvvmcross/mvvmcross-samples
[5] https://www.mvvmcross.com/documentation/plugins/3rd-party-plugins
[6] https://stackoverflow.com/questions/23451315/mvvmcross-azure-mobile-services-example?rq=3
[7] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[8] https://stackoverflow.com/questions/73128508/how-to-load-plugins-when-updation-to-mvmcross-6-4-2-from-5-6-2
[9] https://www.nuget.org/packages/mvvmcross.plugin.ble/