Att använda både plugin.ble och mvvmcross.plugin.ble i samma projekt är tekniskt möjligt, men det kanske inte är den mest effektiva eller rekommenderade metoden. Här är varför:
1. Syfte och funktionalitet:
- Plugin.ble är ett plattform med plattformar som är utformad för åtkomst till Bluetooth Low Energy (BLE) -funktionalitet. Det är lämpligt för projekt som inte kräver MVVM -arkitektur eller ytterligare funktioner som tillhandahålls av MVVMCross.
- mvvmcross.plugin.ble, å andra sidan, är specifikt utformad för projekt med MVVMCross -ramverket. Den integrerar BLE -funktionaliteten i MVVM -arkitekturen, vilket möjliggör beroendeinjektion och andra MVVMCross -funktioner.
2. Beroende och överlappning:
- MVVMCROSS.plugin.ble refererar faktiskt till plugin.ble internt. Detta innebär att om du använder mvvmcross.plugin.ble använder du indirekt plugin.ble också. Att använda båda uttryckligen kan emellertid leda till onödig komplexitet och potentiella konflikter.
3. Användning och integration:
- Om ditt projekt är byggt med MVVMCROSS är det mer enkelt att använda MVVMCROSS.plugin.ble eftersom det integreras bra med MVVM -mönstret och möjliggör beroendeinjektion. Du kan lösa iBluetoothle- och IADapter -tjänster med MVVMCrosss IOC -behållare.
- Om du föredrar en enklare, icke-MVVM-strategi kan plugin.ble vara tillräcklig. Men om du bestämmer dig för att använda båda, se till att du hanterar deras instanser och funktionaliteter noggrant för att undvika konflikter.
4. Potentiella frågor:
- Att använda båda plugins kan leda till förvirring när det gäller att hantera instanser och hantera BLE -operationer. Du kan sluta med flera adaptrar eller BLE -tjänster som körs, vilket kan orsaka oväntat beteende eller fel.
5. Rekommendation:
- Om ditt projekt använder MVVMCross, håll dig fast vid mvvmcross.plugin.ble för konsistens och enkel integration.
- Om ditt projekt inte använder MVVMCross är plugin.ble ett enklare val.
- Undvik att använda båda om du inte har ett specifikt krav som kräver deras kombinerade användning och se till att du hanterar deras integration noggrant.
Sammanfattningsvis, även om det är tekniskt möjligt att använda båda plugins i samma projekt, rekommenderas det i allmänhet inte om du inte har en tvingande anledning att göra det. Valet bör baseras på projektets arkitektur och specifika behov.
Citeringar:]
[2] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-and-setup
[3] https://www.nuget.org/packages/mvvmcross.plugin.ble/
]
[5] https://www.nuget.org/packages/mvvmcross.plugin.ble/2.2.0-re5
[6] https://www.npmjs.com/package/cordova-plugin-bluetoothle
[7] https://github.com/mrozema/xamarin-bluetooth-le
]
[9] https://stackoverflow.com/questions/38327176/xamarin-forms-plugins-ble-mvvmcross-plugins-ble