feat(remote): 修复键盘输入映射并重构连接流程
- Android端注入按键时显式设置SOURCE_KEYBOARD,修复IME丢弃事件导致输入框无法输入文字的问题 - Flutter端新增Flutter逻辑键到Android keyCode的转换映射,避免功能键误触发 - 重构RemoteController,分离信令连接与远程控制逻辑,支持设备列表选择与配对码兑换 - AuthRepository接口新增getBindings、getOnlineDevices、redeemPairingCode方法 - DioAuthRepository实现401自动刷新token重试机制 - ConnectionSessionState扩展设备列表、在线状态、配对码等状态字段
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import '../../connection/domain/binding_device.dart';
|
||||
|
||||
/// 账号体系与自助接口抽象(对应服务端 /api/auth/* 与 /api/client/*)。
|
||||
abstract interface class AuthRepository {
|
||||
/// 内存中的 accessToken(掉线即失)。
|
||||
@@ -19,7 +21,14 @@ abstract interface class AuthRepository {
|
||||
|
||||
Future<Map<String, dynamic>> verify();
|
||||
|
||||
Future<Map<String, dynamic>> bindings();
|
||||
/// 获取主控端已绑定的被控设备列表(含名称、鉴权方式等)。
|
||||
Future<List<BindingDevice>> getBindings();
|
||||
|
||||
/// 获取已绑定且当前在线(信令网络活跃)的设备列表。
|
||||
Future<List<BindingDevice>> getOnlineDevices();
|
||||
|
||||
/// 使用被控端展示的一次性配对码建立绑定关系。
|
||||
Future<void> redeemPairingCode(String code);
|
||||
|
||||
/// 拉取 TURN 短期凭证(服务端开启时返回 iceServers);关闭时返回 null。
|
||||
Future<Map<String, dynamic>?> turnCredentials();
|
||||
|
||||
Reference in New Issue
Block a user