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吧,谢谢啊

相关推荐
Warren9831 分钟前
公司项目用户密码加密方案推荐(兼顾安全、可靠与通用性)
java·开发语言·前端·javascript·vue.js·python·安全
gAlAxy...2 小时前
深入理解 Cookie 与 Session —— Web 状态保持详解与实战
前端
专注VB编程开发20年2 小时前
c#,vb.net全局多线程锁,可以在任意模块或类中使用,但尽量用多个锁提高效率
java·前端·数据库·c#·.net
猩猩程序员2 小时前
Go 1.24 全面拥抱 Swiss Table:让内置 map 提速 60% 的秘密
前端
1024小神2 小时前
vue3 + vite项目,如果在build的时候对代码加密混淆
前端·javascript
轻语呢喃3 小时前
useRef :掌握 DOM 访问与持久化状态的利器
前端·javascript·react.js
wwy_frontend3 小时前
useState 的 9个常见坑与最佳实践
前端·react.js
w_y_fan3 小时前
flutter_riverpod: ^2.6.1 应用笔记 (一)
前端·flutter
Jerry3 小时前
Compose 界面工具包
前端