- Android端注入按键时显式设置SOURCE_KEYBOARD,修复IME丢弃事件导致输入框无法输入文字的问题 - Flutter端新增Flutter逻辑键到Android keyCode的转换映射,避免功能键误触发 - 重构RemoteController,分离信令连接与远程控制逻辑,支持设备列表选择与配对码兑换 - AuthRepository接口新增getBindings、getOnlineDevices、redeemPairingCode方法 - DioAuthRepository实现401自动刷新token重试机制 - ConnectionSessionState扩展设备列表、在线状态、配对码等状态字段
82 lines
3.8 KiB
Plaintext
82 lines
3.8 KiB
Plaintext
{
|
|
"@@locale": "en",
|
|
"appTitle": "WebRTC Controller",
|
|
"login": "Login",
|
|
"logout": "Logout",
|
|
"registerAccount": "Create Account",
|
|
"registerSuccess": "Registered successfully, please log in",
|
|
"registerFailed": "Registration failed: {error}",
|
|
"loginSubtitle": "Log in to connect your bound devices",
|
|
"cancel": "Cancel",
|
|
"confirm": "OK",
|
|
"connect": "Connect",
|
|
"connecting": "Connecting...",
|
|
"loginAccount": "Login Account",
|
|
"connectDevice": "Connect Device",
|
|
|
|
"deviceId": "Device ID (assigned by server):",
|
|
"deviceIdPlaceholder": "Assigned by server",
|
|
"targetDeviceId": "Target Device ID:",
|
|
"targetDeviceIdPlaceholder": "Controlled device ID",
|
|
"username": "Username",
|
|
"password": "Password",
|
|
"loginFailed": "Login failed: {error}",
|
|
"usernamePasswordRequired": "Please enter username and password",
|
|
"targetRequired": "Please enter target device ID",
|
|
"authTitle": "Connection Auth",
|
|
"authNone": "Passwordless",
|
|
"authNoneDesc": "Manual confirmation on the controlled device",
|
|
"authCode": "Dynamic Code",
|
|
"authCodeDesc": "Use a one-time dynamic code",
|
|
"authPassword": "Fixed Password",
|
|
"authPasswordDesc": "Use a fixed connection password",
|
|
"authNonePlaceholder": "No value needed",
|
|
"authPasswordPlaceholder": "Enter fixed password",
|
|
"authCodePlaceholder": "Enter dynamic code",
|
|
"authValueRequired": "Please enter the code or password",
|
|
"statusStopped": "Status: Stopped",
|
|
"statusConnectingSignal": "Status: Connecting to signal server...",
|
|
"statusConnected": "Status: Connected - remote control active",
|
|
"statusDisconnected": "Status: Remote disconnected",
|
|
"statusSignalConnected": "Status: Signal connected, waiting for registration...",
|
|
"statusRegistered": "Status: Registered ({deviceId}), establishing...",
|
|
"statusAuthFailed": "Status: Auth failed - {error}",
|
|
"statusConnectError": "Status: Connection error - {error}",
|
|
"statusTargetAccept": "Status: Target accepted, establishing connection...",
|
|
"statusTokenRefreshFailed": "Status: Token refresh failed - {error}",
|
|
"statusForceLogout": "Status: Account logged in elsewhere, force logged out",
|
|
"connectedBindings": "Bound devices: {uids}",
|
|
"resolutionSwitch": "Switch Resolution",
|
|
"fpsSwitch": "Switch FPS",
|
|
"selfCodec": "SelfCodec",
|
|
"record": "Record",
|
|
"stop": "Stop",
|
|
"recording": "Recording...",
|
|
"recordSaved": "Saved: {path}",
|
|
"recordStopped": "Recording stopped",
|
|
"recordNoStream": "Not connected or no video stream available",
|
|
"recordSwitchToStd": "Switching back to standard mode to record...",
|
|
"recordStartFailed": "Failed to start recording: {error}",
|
|
"recordNoVideoTrack": "No remote video track received",
|
|
"selfCodecNotSupported": "Self-codec hardware decoding is not supported on this platform, fell back to WebRTC media stream.",
|
|
"iceDisconnected": "ICE connection disconnected",
|
|
"targetOffline": "Target device is offline. Please confirm it is powered on and connected.",
|
|
"connectionFailed": "Connection failed: {error}",
|
|
"tokenExpired": "Session expired. Please login again.",
|
|
"forceLogout": "Account logged in elsewhere, force logged out.",
|
|
"loginFirst": "Please login before connecting",
|
|
"pleaseFillAuth": "Please enter the code or password",
|
|
"streamModeSelfCodecDesc": "Self-codec hardware decoding is not supported on this platform.",
|
|
"boundDevices": "Bound Devices",
|
|
"online": "Online",
|
|
"offline": "Offline",
|
|
"noBoundDevices": "No bound devices yet",
|
|
"refreshDevices": "Refresh",
|
|
"redeemPairingCode": "Bind with Pairing Code",
|
|
"pairingCodeHint": "Enter the pairing code shown on the controlled device",
|
|
"bindingFailed": "Binding failed: {error}",
|
|
"deviceOfflineCannotConnect": "Device \"{name}\" is currently offline and cannot be connected",
|
|
"pleaseSelectDevice": "Please select a bound device first",
|
|
"bindSuccess": "Bound successfully"
|
|
}
|