2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

微软公布 Flutter 最新进展:支持可折叠设备后续

  • 2022-03-03
  • 本文字数:1646 字

    阅读完需:约 5 分钟

微软公布 Flutter 最新进展:支持可折叠设备后续

2022 年 2 月 24 日,微软发布了关于支持用 Flutter 开发可折叠设备的更新公告。公告中公开了最新的开发进展,之前所打开的框架、引擎和 DisplayFeatureSubScreen 拉取请求,现在都已经整合进 Flutter 存储库,同时微软也发布新范例,供开发者尝鲜。

 

MediaQuery 现在具有 Display Features

 

微软提到,可折叠设备有许多类型,可能使用可弯曲或是可卷曲具弹性的显示器,开发者的应用程序可以在具有显示特征下(Display Feature)的显示器中,呈现更大的画面。

 

显示特征属于显示器的属性,这类信息在 Flutter 由 MediaQuery 提供。所谓的 Display Features,指的是在显示器中,可能无法使用或是受到屏蔽的区域,微软在 Flutter 添加三种显示特征,包括刘海型(Cutout)、合页型(Hinge)以及对折型(Fold)。而微软自家可折叠设备 Surface Duo 上的 Hinge 就是一个 display feature。

 

目前微软已经将支持可折叠设备的 MediaQuery 拉取请求,整合到 Flutter 的程序代码存储库中,这代表用户只要使用主要分支,就可以访问一个名为 displayFeatures 的属性,部分设备可以拥有多种 display features ,因此该属性会提供一个列表,这是列表中项目的结构:

 

class DisplayFeature {  final Rect bounds;  final DisplayFeatureType type;  final DisplayFeatureState state; }
复制代码

 

开发者也能以简单的方式,取得合页型可折叠设备的可用信息:

 

/// Extension method that helps with working with the hinge specifically.extension MediaQueryHinge on MediaQueryData {  DisplayFeature? get hinge {    for (final DisplayFeature e in displayFeatures) {      if (e.type == DisplayFeatureType.hinge)        return e;    }    return null;  }}
复制代码

 

DisplayFeatureSubScreen 也被合并

 

DisplayFeatureSubScreen 功能也已经被整合到 Flutter 主分支中,当用户想要在 Surface Duo 这类合页型可折叠设备的其中一个屏幕显示内容时,像是对话窗口,就可以选择使用 DisplayFeatureSubScreen 小工具。

 

这个小工具是对话窗口和交互窗口(Modal)的基础功能,并在“对话框和弹出窗口支持”PR 中大量使用。如果开发者的应用程序中有自定义的 modal routes,可能需要考虑使用此小部件 wrapping 它们。

 

class _MyRoute<T> extends PopupRoute<T> {  @override  Widget buildPage(...) {    return DisplayFeatureSubScreen(      child: _myPageLayout(),      anchorPoint: Offset.infinite,     );  }}
复制代码

 

目前微软在 Flutter 中提供可折叠设备的支持还未完成,除了正在接受审查的对话窗口和自订交互窗口路由拉取请求,TwoPane 工具的拉取请求也已经打开。

 

开发者可以复制微软的 Flutter 分叉,即可以使用全部这些新功能,包括使用 TwoPane,让新的对话窗口避开合页中间。官方提到,在他们新发布的范例中,展示了针对双屏幕设备的所有设计模式,以及对话窗口和合页角度的一些操作。



Surface Duo 模拟器中的 Flutter 双屏示例

 

除了双屏,开发者也可以通过范例,了解将这些设计模式,扩展到大屏幕的方法,也就是说,开发者能够在桌上计算机执行范例,并借由调整应用程序大小,来查看设计模式在不同场景的表现。

 

Flutter 和微软

 

在 Google 的大力推动下,Flutter 在过去几年中取得了长足的发展,目标是创建开发者梦想中的跨平台软件框架。Flutter 可为 Android、iOS、Linux、Windows、macOS 以及网页开发应用,所有这些都共享代码库和视觉设计。

 

而微软在支持双屏幕可折叠设备的开发也已经有两年的时间,去年 3 月,微软发布适用 Flutter 支持可折叠设备预览,要让开发人员可以使用 Flutter 在可折叠设备上开发应用程序。

 

在上个月,Flutter 2.10 稳定版正式发布,对构建 Windows 应用程序的支持首次达到稳定状态。结合本次最新的公告来看,微软目前能够衔接 Flutter 应用程序从原本移动设备的小屏幕,到可折叠设备屏幕,甚至是大屏幕的显示体验。

 

参考链接:

 

https://devblogs.microsoft.com/surface-duo/foldable-flutter-update/

2022-03-03 15:133244

评论

发布
暂无评论
发现更多内容

仓颉编程语言技术指南:嵌套函数、Lambda 表达式、闭包

华为云开发者联盟

鸿蒙 编程语言 华为云开发者联盟 企业号2024年7月PK榜 仓颉

【程序大侠传】全局变量与并发之战

Disaster

以用户为中心:观测云的设计理念

可观测技术

监控

深入解析仓颉编程语言:函数式编程的核心特性

代码忍者

仓颉

24年黑龙江正规等保测评机构名单汇总

行云管家

等保 堡垒机 等保测评 黑龙江

LLM推理加速:decode阶段的Attention在GPU上的优化

阿里技术

阿里巴巴 推理 大模型 LLM RTP-LLM

职场<火焰杯>测试开发大赛决赛成绩及获奖名单公布!

测试人

软件测试

一文了解MySQL索引机制

京东零售技术

后端 MySQL 高可用 企业号2024年7月PK榜

在 K8s 上用 KubeBlocks 提供的 PG 和 Redis operator 部署高可用 Harbor 集群

小猿姐

postgresql Kubernetes operator Redis 消费队列

夏日清凉计划开启,来华为天气领取出行礼包、影音会员等惊喜福利

最新动态

焱融科技发布国产化全闪新品 F8000XC

焱融科技

探讨大模型前沿技术与商业化落地 |【奇绩潜空间】第3季开始报名

奇绩创坛

人工智能 机器学习 深度学习 大模型 视频生成

ChatGPT4o 如何速写论文

蓉蓉

gpt4o

一步即扫,直达应用所有服务

HarmonyOS SDK

HarmonyOS

【论文速读】| Arondight:使用自动生成的多模态越狱提示对大型视觉语言模型进行红队测试

云起无垠

【YashanDB知识库】服务端是GBK编码,导致从22.2.12.100升级到22.2.13.100失败问题

YashanDB

yashandb 崖山数据库 崖山DB

运维安全审计以及运维安全审计软件定义看这里!

行云管家

安全运维 运维安全 运维安全审计

淘宝商品详情API:商品规格参数的详细解析

技术冰糖葫芦

API Explorer API 编排 api 货币化 API 文档

职场<火焰杯>测试开发大赛决赛成绩及获奖名单公布!

测吧(北京)科技有限公司

测试

AI客服上线 干货 干货 全是干货!

开源物联卡管理平台-设备管理

物联网 IoT eSIM安全 java 技术提升

观测云:零售行业数据分析的利器

可观测技术

贝锐蒲公英智能选路:跨地区远程访问更快、更稳、更可靠

贝锐

远程办公 SD-WAN 智能选路 异地组网

灵活数据流处理:NeuronEX 支持 JavaScript 自定义函数

EMQ映云科技

Java 车联网 物联网 数据采集 NeuronEX

从K8s的“临时容器”看K8s设计的厉害之处

华为云开发者联盟

Docker 容器 云原生 华为云开发者联盟 企业号2024年7月PK榜

观测云:企业级监控的全方位解决方案

可观测技术

监控

京东商品列表数据接口:电商数据分析的利器

tbapi

京东API 京东商品列表数据接口 京东商品数据采集

Web网页端IM产品RainbowChat-Web的v7.1版已发布

JackJiang

即时通讯 即时通讯;IM;网络编程

微软公布 Flutter 最新进展:支持可折叠设备后续_大前端_闫园园_InfoQ精选文章