如何在运行时获得 flutter windows 桌面用户屏幕宽度

How to get flutter windows desktop users screen width at runtime

所以,通常我可以使用 MediaQuery.of(context).size 获取屏幕尺寸,但是我无法在运行时访问上下文。是否有任何软件包或 API 我可以利用它来完成此操作?

编辑: 已接受@smorgan 的回答。为其他人添加具有小用例的 pubspec.yaml 条目,这样他们就不必去挖掘了。

**注意这最终会被删除并添加到 flutter 核心功能中(希望如此)。

此外,ref 字段是截至 21 年 12 月 15 日的当前分支的提交哈希值

pubspec.yaml条目:

window_size:
git:
  url: git://github.com/google/flutter-desktop-embedding.git
  path: plugins/window_size
  ref: 03d957e8b5c99fc83cd4a781031b154ab3de8753

获取屏幕尺寸

var screenSize = await getCurrentScreen();
print(screenSize?.frame.size);

这就是我用于 flutter 的 windows 应用程序:

https://pub.dev/packages/desktop_window

window_size 插件可让您获取当前屏幕尺寸,或所有屏幕及其尺寸的列表。