Google Connect 8月14日纪实

今天有幸参加了Google Connect,上次参加类似活动还是2017年的Google Developer Day。有人问我为什么要线下参加,线上不也一样有直播吗?那当然不一样啊,我大老远地飞到上海其实就是为了蹭Google的饭:

不过,和2017年的北京GDD比起来,这伙食变差了昂,之前都是自助餐,现在咋变盒饭了?好在口味还可以,就勉强饶了Google吧。

话不多说,分享一下经历吧。

概要

今天参加的主要是Android,隔壁的Cloud只听了一点点。虽然昨天AI相关的没有参加,但结合现在的一些体验区来看,Google在AI上花了不少力气,总之就是各种各样的AI。

但今天,我主要要从Android、Flutter和Material design等几个角度来说说。

Jetpack Compose

TextField

Jetpack Compose当然是Android的重头戏之一,这次带来的Jetpack Compose 1.8,主要讲的TextField的变化,讲真惊喜还是有的,惊喜的代价就是API变化比较大......

现在也有针对密码类型的TextField了:SecureTextField,更绝绝子的是Google演示了一个使用TextField开的OTP验证组件,也就是我们常见的验证码验证框,现在通过使用TextField很容易就创建一个这样的组件。

如果按照我们最淳朴的实现思路大概是这样的:

但做过的都懂这有多麻烦,所以现在借助最新的Compose的TextField轻松实现类似功能:

当然还自动填充功能:

支持的自动填充类型真是不少:

还自动调整字体大小的功能:

还有inputTranformation,可以对输入的文字进行变换。

Modifier.contentReceiver

这个功能是在foundation-1.7推出的试验性功能。

Google演示的把从Gboard里拖拽表情到聊天室就是这个API实现的.

实际上,Modifier.contentReceiver并不仅仅可以用作TextField上,它也可以用在别的组件上。

这种东西我就不细说了,具体可以看看相关的文档或者视频录像。

Material Design

没啥可说的,看几张图就行

Flutter

会议上的Flutter其实没啥可说的,都是一些老生常谈的东西,比如web上的hotreload,dart的Null-Aware Elements,ffigen/jnigen等等,都在意料之中的,并没什么惊喜。但会议外我还是和Flutter组的人员聊了不少,意料之外的这个小伙居然还会中文,反正中英文瞎聊了一会儿。

第一个问题就有点太直接甚至不太礼貌,哈哈:

复制代码
Flutter还活着呢吗

答案当然是活着了,据说Flutter组还要加人的。

然后现在我说了一个现在Flutter的痛点那就是json的序列化,只能说他们正在努力吧。

另外一个好消息就是经过4年的开发,ffi终于快成型了,以后直接操作Java/C等就方便了很多,method channel这种东西可能就要被干掉了。

还就是我之前也发过文章,说是material和cupertino要从flutter 中独立出来,这是一个好消息,更方便大家自定义组件。

还聊到了KMP和Flutter,他说也许Flutter会更先支持鸿蒙,不过这话我觉得听听就行了。

我也问了同样都是Google的产品,你怎么看待KMP和Flutter的未来?当然这个问题肯定是没有一个明确的答案的,他当然还是推荐我使用Flutter了。

类似的问题,我也问Compose相关人员,老哥说的KMP和Flutter应用场景不一样,KMP是有native的能力的,比如你要在手表上开发,你可以选择KMP,不管怎么说,这个问题是没有你想像中的答案的。

其他

还有关于Jetpack compose自适应的主题:

从上面可以看出Google对多屏幕以及大屏幕的要求,因为Android 16以后是支持外接显示器的。所以现在的Android开发不仅要考虑横屏、竖屏还要考虑大屏、多屏、多窗口等等,我只能说是太难了。不过话说回来了,有没有想过Google为什么要这么做?以我的愚见那当然是ChormeOS和Android的整合了......

最后

今天的收获真是满满因为吃的饱饱的,还遇到了郭霖大神。

东西有很多,我整理的也比较匆忙。如果大家有兴趣可以留言,我可以再整理。

看到Jetpack compose的一系列更新,特别是强大的自适应布局,我还真是眼馋,看来,如果条件允许,UI还是用原生开发最靠谱。

不过,Compose这些更新什么时候能用KMP就不好说了。毕竟Compose的跨平台是Jetbrains在做,当google开发完compose,Jetbarain要再做适配,这是CMP的痛点之一,不知道JB什么时候能做完适配......

快来关注公众号OpenFlutter吧,谢谢啊

相关推荐
CarIise11 分钟前
CSS选择器与样式关联
前端·css·tensorflow
里欧跑得慢1 小时前
CSS 模块化架构的演进:BEM、CSS Modules 到 CSS-in-JS 的反思
前端·css·flutter·web·css-in-js
IT_陈寒2 小时前
Vue的computed属性把我坑惨了,原来我一直用错姿势
前端·人工智能·后端
小灰灰搞电子2 小时前
Rust+Slint 实现温度计源码分享
前端·rust·slint
计算机魔术师2 小时前
面壁智能 OpenBMB 推出 MathForm,面向 Lean 4 数学自动形式化的开源框架、数据集与模型
前端
NeilCarmack3 小时前
Deepseek-harness增加桌面版端序列:第 2 讲 · spawn Electron:当前进程如何“交棒“
前端·javascript·electron
上海魁鲸科技有限公司3 小时前
APS高级排产系统到底有什么用?一文讲清功能、选型与落地建议
前端·microsoft·excel
陈随易3 小时前
Bun v1.4 更新总结:把浏览器、图片、定时任务和工程工具都装进一个运行时
前端·后端·程序员
东风破_5 小时前
TypeScript 高级类型进阶:keyof、Exclude、Record 与类型组合思想
前端·后端·typescript
DS随心转插件5 小时前
Grok生成的html怎么导出——AI导出鸭:大模型结构化输出的“最后一公里”工程化解构
前端·人工智能·ai·html·豆包·deepseek·ai导出鸭