You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
967 B

import Flutter
public class OtaPlugin: NSObject, FlutterPlugin {
let userManager = JLBleManager.sharedInstance()
public static func register(with registrar: FlutterPluginRegistrar) {
let channel = FlutterMethodChannel(name: "ota", binaryMessenger: registrar.messenger())
let instance = OtaPlugin()
registrar.addMethodCallDelegate(instance, channel: channel)
}
public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) {
switch call.method {
case "startUpgrading":
startUpgrading()
result("")
case "onOtaClose":
onOtaClose()
result("")
default:
result(FlutterMethodNotImplemented)
}
}
private func startUpgrading() {
if userManager.mBleManagerState == CBManagerState.poweredOn {
userManager.startScanBLE()
DispatchQueue.main.asyncAfter(deadline: .now() + 2.0) {
self.userManager.stopScanBLE()
}
}
}
private func onOtaClose() {}
}