import 'package:flutter/services.dart'; class AmapService { static final AmapService _instance = AmapService._internal(); /// 获取单例 factory AmapService() => _instance; // 方法通道 final MethodChannel _methodChannel = const MethodChannel( 'com.yunqiinnovation.amap_service', ); // 事件通道 - 简化为只使用数据和状态通道 late final EventChannel _dataEventChannel; late final EventChannel _statusEventChannel; // 事件流 late final Stream _dataStream; late final Stream _statusStream; // 获取事件流 Stream get onDataReceived => _dataStream; // 状态流直接传递原始数据 Stream get onStatusUpdated => _statusStream; // 内部构造函数 AmapService._internal() { _dataEventChannel = const EventChannel( 'com.yunqiinnovation.amap_service/data_events', ); _statusEventChannel = const EventChannel( 'com.yunqiinnovation.amap_service/status_events', ); // 初始化事件流 _dataStream = _dataEventChannel.receiveBroadcastStream(); _statusStream = _statusEventChannel.receiveBroadcastStream(); } // 初始化SDK Future initSdk({String? iosKey, String? androidKey}) async {} // 定位初始化 Future initLocation() async {} // 开始定位 Future startLocation() async {} // 监听定位返回位置 Stream locationStream() { return _dataStream; } // 停止定位 Future stopLocation() async {} // 销毁 Future dispose() async {} }