extractContextParameters static method

Map<String, dynamic> extractContextParameters(
  1. BuildContext? context
)

提取上下文参数

Implementation

static Map<String, dynamic> extractContextParameters(BuildContext? context) {
  try {
    final parameters = <String, dynamic>{};

    if (context == null) return parameters;

    // 尝试获取主题信息
    try {
      final theme = Theme.of(context);
      parameters['theme_brightness'] = theme.brightness.toString();
    } catch (e) {
      // 忽略错误
    }

    // 尝试获取媒体查询信息
    try {
      final mediaQuery = MediaQuery.of(context);
      parameters['screen_size'] = '${mediaQuery.size.width}x${mediaQuery.size.height}';
      parameters['device_pixel_ratio'] = mediaQuery.devicePixelRatio;
    } catch (e) {
      // 忽略错误
    }

    return parameters;
  } catch (e) {
    return {};
  }
}