写点什么

微软公布 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:132905

评论

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

语义检索系统:基于Milvus 搭建召回系统抽取向量进行检索,加速索引

汀丶人工智能

自然语言处理 nlp 搜索推荐系统 语义搜索系统 向量搜索

语义检索系统之排序模块:基于ERNIE-Gram的Pair-wise和基于RocketQA的CrossEncoder训练的单塔模型

汀丶人工智能

人工智能 自然语言处理 排序算法 语义搜索 搜索推荐系统

“数智新应用”不再是口号,看汽车、医药、制造企业如何突出重围?

Kyligence

数智化转型

openGauss内核荣获中国首个国际CC EAL4+级别认证

daydayup

语义检索系统:基于无监督预训练语义索引召回:SimCSE、Diffcse

汀丶人工智能

自然语言处理 nlp 向量检索 语义检索 搜索推荐系统

文本 Embedding 基本概念和应用实现原理

Dify

技术分享 Embedding word embedding

openGauss数据库从3.0.0升级到3.1.0操作实践

daydayup

既要增长又要人效,零售人准备好接受老板的灵魂拷问了吗

Kyligence

数据分析 零售行业

2023-08-02:给定一棵树,一共有n个点, 每个点上没有值,请把1~n这些数字,不重复的分配到二叉树上, 做到 : 奇数层节点的值总和 与 偶数层节点的值总和 相差不超过1。 返回奇数层节点分配

福大大架构师每日一题

福大大架构师每日一题

Sprint Boot学习路线4

小万哥

Java spring 微服务 Spring Cloud Spring Boot

Dify.AI 用户直面会总结:Embedding 技术与 Dify 数据集设计/规划

Dify

开源项目 AI技术实践 LLMOps

Ubuntu如何配置软件镜像源?

百度搜索:蓝易云

云计算 Linux ubuntu 运维 蓝易云

openGauss内核分析(二.一):简单查询的执行

daydayup

基于无监督训练SimCSE+In-batch Negatives策略有监督训练的语义索引召回

汀丶人工智能

人工智能 自然语言处理 语义搜索 搜索推荐系统

阿里云出品—高分计算机好书推荐榜

穿过生命散发芬芳

计算机图书

如何利用 AI 在 5 分钟批量产出 100 篇 SEO 文章?

Dify

批量任务 SEO AI技术实践 LLMOps

ubuntu编译安装kernel教程。

百度搜索:蓝易云

云计算 Linux ubuntu 云服务器 内核

openGauss内核分析(二.二):简单查询的执行

daydayup

「2023最新版」Java基础、中级、高级面试题总结(1000道题含答案解析)

架构师之道

Java 面试

云智慧x统信软件:智能化IT服务管理,提升客户服务价值

云智慧AIOps社区

ITSM IT运维 智能运维AIOps 工单管理系统

山东布谷科技iOS端分析直播app源码秒开技术(二):缓冲功能

山东布谷科技

软件开发 ios 开发 首帧秒开 缓冲 直播APP源码

nginx常用配置教程。

百度搜索:蓝易云

nginx 云计算 Linux 运维 云服务器

高效能ScrumMaster的三大权利

ShineScrum捷行

Scrum ScrumMaster

Amazon Aurora Serverless v2 正式发布:针对要求苛刻的工作负载的即时扩展

亚马逊云科技 (Amazon Web Services)

MySQL

专家论道: 唐贤香云纱塑造中国非遗国际品牌

Geek_2d6073

这个Python项目让古诗变得更易读,看完《长安三万里》惊艳了!

程序员晚枫

Python 拼音 长安三万里 古诗词

java代码加壳加密工具 jar-protect

车江毅

CentOS搭建squid正向代理教程。

百度搜索:蓝易云

云计算 Linux centos 运维 squid

Gartner首发中国数据、分析与人工智能技术成熟度曲线,柏睿数据入选实时数据管理典型厂商

新消费日报

重磅更新 | 大幅提升数据集命中预期;AI 联网搜索能力也来了!

Dify

AI技术 开源软件 LLMOps

JMeter笔记17 | JMeter逻辑控制器简介

测试 单元测试 Jmeter 性能测试 接口测试

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