This is an Xamarin binding library for the Nordic Semiconductors Android library for updating the firmware of their devices over the air via Bluetooth Low Energy.
The Java library is located here: https://github.com/NordicSemiconductor/Android-DFU-Library
The native iOS Pod library is located here: https://github.com/NordicSemiconductor/IOS-Pods-DFU-Library
You'll need :
- MacOS
- with XCode
- with Xamarin.iOS
- with gradle
- with Xamarin.Android
- [with ObjectiveSharpie] (optional)
brew cask install objectivesharpiegit clone https://github.com/Laerdal/Laerdal.Dfu.gitThere are 2 sources for the iOS package : via building the release code or using the CocoaPods.
To build the nuget via building the source code, run :
./build.shOtherwise, to download cocoapods xcframeworks :
./build.sh --use-carthageYou'll find the nuget in Laerdal.Dfu.Output/
Fix : Laerdal/Laerdal.Dfu.iOS#3 (comment) |
#!/usr/bin/env sh
xcode_lib_path="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-5.0/iphoneos"
app_path=$1
app_name=<insert app name>
libs=("$app_path/Products/Applications/$app_name/Frameworks/"*.dylib)
for i in "${libs[@]}"
do
cp "$xcode_lib_path/$(basename "$i")" "$app_path/SwiftSupport/iphoneos/"
cp "$xcode_lib_path/$(basename "$i")" "$app_path/Products/Applications/$app_name/Frameworks/"
done-- Thanks @OliverFlecke
Fix : You might need to add "--optimize=-remove-dynamic-registrar" to your apps mtouch args.