添加设备代码信息到 Android 和 iOS 平台信息;更新 Auth 页面以使用新的 TextEditingController 管理输入;重构推流测试页面以支持动态 RTMP URL 解析;删除不再需要的测试文件。

This commit is contained in:
2026-07-09 12:26:41 +08:00
parent 98a3381716
commit a1f6ea14cf
29 changed files with 267 additions and 1797 deletions
+31
View File
@@ -0,0 +1,31 @@
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:recording_tool/app/config/api_common.dart';
import 'package:recording_tool/core/cache/app_storage.dart';
import 'package:recording_tool/core/cache/storage_keys.dart';
import 'package:recording_tool/core/network/providers/dio_providers.dart';
import 'package:recording_tool/core/utils/device_utils.dart';
import 'package:recording_tool/features/auth/model/model_auth.dart';
class AuthServer {
/// [passCode] 口令码
static Future<GetTokenResModel> login(String passCode, Ref ref) async {
final deviceCode = await DeviceUtils.deviceCode();
if (deviceCode.isEmpty) {
throw const FormatException('无法获取设备标识');
}
final apiClient = ref.read(apiClientProvider);
final data = await apiClient.post<GetTokenResModel>(
AuthApi.getToken.path,
data: {'deviceCode': deviceCode, 'passCode': passCode},
parser: (json) => GetTokenResModel.fromJson(json as Map<String, dynamic>),
);
if (data.deviceAccessToken.isEmpty) {
throw const FormatException('登录响应缺少 TOKEN');
}
await AppStorage.setString(StorageKeys.authToken, data.deviceAccessToken);
return data;
}
}