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.
 
 
 
 
 
open-im-sdk-flutter-m/ios/Classes/SwiftFlutterOpenimSdkPlugin...

51 lines
2.1 KiB

import Flutter
import UIKit
public class SwiftFlutterOpenimSdkPlugin: NSObject, FlutterPlugin {
let imManager: IMMananger
let conversationManager: ConversationManager
let friendshipManager: FriendshipManager
let messageManager: MessageManager
let groupManager: GroupManager
let userManger: UserManager
let channelManager: ChannelManager
init(channel: FlutterMethodChannel) {
self.imManager = IMMananger(channel: channel)
self.conversationManager = ConversationManager(channel: channel)
self.friendshipManager = FriendshipManager(channel: channel)
self.messageManager = MessageManager(channel: channel)
self.groupManager = GroupManager(channel: channel)
self.channelManager = ChannelManager(channel: channel)
self.userManger = UserManager(channel: channel)
}
public static func register(with registrar: FlutterPluginRegistrar) {
let channel = FlutterMethodChannel(name: "flutter_openim_sdk", binaryMessenger: registrar.messenger())
let instance = SwiftFlutterOpenimSdkPlugin(channel: channel)
registrar.addMethodCallDelegate(instance, channel: channel)
}
public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) {
let managerName: String = call[string: "ManagerName"]
switch managerName {
case "imManager":
imManager.handleMethod(call: call, result: result)
case "conversationManager":
conversationManager.handleMethod(call: call, result: result)
case "messageManager":
messageManager.handleMethod(call: call, result: result)
case "friendshipManager":
friendshipManager.handleMethod(call: call, result: result)
case "groupManager":
groupManager.handleMethod(call: call, result: result)
case "channelManager":
channelManager.handleMethod(call: call, result: result)
case "userManager":
userManger.handleMethod(call: call, result: result)
default:
print("Handle ManagerName Error: \(managerName) not found")
}
}
}