27 lines
1.0 KiB
Dart
27 lines
1.0 KiB
Dart
|
|
/// 环境入口配置(P3 计划 Task 2)。
|
|||
|
|
///
|
|||
|
|
/// 值经 `--dart-define=KEY=value` 覆盖;缺省指向 Android 模拟器宿主回环
|
|||
|
|
/// (10.0.2.2 = 模拟器内看到的宿主机 localhost,见计划「模拟器网络回环」
|
|||
|
|
/// 偏差登记)。`String.fromEnvironment` 为编译期常量,不可运行时切换。
|
|||
|
|
class ApiConfig {
|
|||
|
|
const ApiConfig._();
|
|||
|
|
|
|||
|
|
/// cn-api 基地址(不含 `/v1` 前缀——契约 servers.url 为 `/v1`,
|
|||
|
|
/// 由 [ApiClient] 统一拼接到各端点路径)。
|
|||
|
|
static const String baseUrl = String.fromEnvironment(
|
|||
|
|
'API_BASE',
|
|||
|
|
defaultValue: 'http://10.0.2.2:8080',
|
|||
|
|
);
|
|||
|
|
|
|||
|
|
/// viewer 观众端基地址(Task 4 分享二维码链接用)。
|
|||
|
|
static const String viewerBase = String.fromEnvironment(
|
|||
|
|
'VIEWER_BASE',
|
|||
|
|
defaultValue: 'http://10.0.2.2:5175',
|
|||
|
|
);
|
|||
|
|
|
|||
|
|
/// 观众端相册链接:`{VIEWER_BASE}/a/{token}`(Task 4 qr 分享用,
|
|||
|
|
/// viewer 路由约定)。
|
|||
|
|
static String viewerAlbumUrl(String publicToken) =>
|
|||
|
|
'$viewerBase/a/$publicToken';
|
|||
|
|
}
|