invoke static method
void
invoke(})
Implementation
static void invoke(String command, Object? parameter, Object? success,
{Object? progress, Object? fail}) {
if (!isListenEvent) {
isListenEvent = true;
_listenChannel
.receiveBroadcastStream("TTLockListen")
.listen(_onEvent, onError: _onError);
}
//开始、停止扫描的时候 清空之前所有的扫描回调
scanCommandList.forEach((scanCommand) {
if (command.compareTo(scanCommand) == 0) {
List removeMapList = [];
_commandQueue.forEach((map) {
String key = map.keys.first;
if (key.compareTo(COMMAND_START_SCAN_LOCK) == 0 ||
key.compareTo(TTGateway.COMMAND_START_SCAN_GATEWAY) == 0 ||
key.compareTo(TTRemoteKey.COMMAND_START_SCAN_REMOTE_KEY) == 0 ||
key.compareTo(TTRemoteKeypad.COMMAND_START_SCAN_REMOTE_KEYPAD) ==
0 ||
key.compareTo(TTDoorSensor.COMMAND_START_SCAN_DOOR_SENSOR) == 0) {
removeMapList.add(map);
}
});
removeMapList.forEach((map) {
_commandQueue.remove(map);
});
}
});
if (command == COMMAND_STOP_SCAN_LOCK ||
command == TTGateway.COMMAND_STOP_SCAN_GATEWAY ||
command == TTRemoteKey.COMMAND_STOP_SCAN_REMOTE_KEY ||
command == TTRemoteKeypad.COMMAND_STOP_SCAN_REMOTE_KEYPAD ||
command == TTDoorSensor.COMMAND_STOP_SCAN_DOOR_SENSOR) {
} else {
Map commandMap = new Map();
Map callbackMap = new Map();
callbackMap[CALLBACK_SUCCESS] = success;
callbackMap[CALLBACK_PROGRESS] = progress;
callbackMap[CALLBACK_FAIL] = fail;
commandMap[command] = callbackMap;
_commandQueue.add(commandMap);
}
_commandChannel.invokeMethod(command, parameter);
// if (printLog) {
// print(
// '----------------------------------------------------------------------------------------------------------');
// print('TTLock command: $command parameter:$parameter');
// print(
// '----------------------------------------------------------------------------------------------------------');
// }
}