import Flutter import UIKit import AMapLocationKit public class LocationServicePlugin: NSObject, FlutterPlugin { private static var channel: FlutterMethodChannel? public static func register(with registrar: FlutterPluginRegistrar) { let channel = FlutterMethodChannel(name: "com.yunqiinnovation.location_service", binaryMessenger: registrar.messenger()) let instance = LocationServicePlugin() // 必须先设置隐私合规 DispatchQueue.main.async { // 2. API Key AMapServices.shared()?.apiKey = "aa60a03be9f6531bcc64029e60f95d03" AMapServices.shared().enableHTTPS = true // 3. 打印验证(调试用) print("高德SDK初始化完成") } registrar.addMethodCallDelegate(instance, channel: channel) self.channel = channel instance.addstartlocationmonitor() } public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { switch call.method { case "location": result(nil) default: result(FlutterMethodNotImplemented) } } private func addstartlocationmonitor(){ // 通常放在启动后或模块初始化时 NotificationCenter.default.addObserver( forName: .locationstartEvent, object: nil, queue: .main ) { notification in print("📥 收到 启动定位服务事件") LocationService.shared.initialize() } } }