谷歌使用Jetpack Compose逐步重写Android 14,不会你还不知道吧?

前言

早在 2019 年,谷歌就推出了 Jetpack Compose,这是一种使用 Kotlin 开发原生安卓应用的编写方式,抛弃了常规基于 XML 的视图来设计应用 UI,而是让开发者以声明方式创建设计。

从那时起,谷歌就大力鼓励开发者在安卓应用中使用 Jetpack Compose,还使用 Jetpack Compose 重构了其 Play Store 应用商店。

根据外媒 9To5Google 的发现,谷歌正使用 Jetpack Compose 逐步重写 Android 14 的设置应用,代号为“Spa”,目前已重构了部分页面,其中包括与应用、通知和语言偏好相关的页面。

Jetpack Compose 是一个声明式、响应式的 UI 框架,其写法与 Web 框架 Flutter 较为相似,编写起来确实也较为简单,作为谷歌主推的开发框架,Android 14 乃至后续系统预计将不断扩大 Jetpack Compose 的影响力

Jetpack Compose的主要优点包括:

  • 开发过程简化和直观:Compose的UI模型使用可重复的代码块进行构建,使得开发者能够以最快的速度得到反馈。同时,Compose使得UI设计更直观,实时预览结果,从而更容易进行开发。
  • 实现一致的用户界面:Compose框架使得开发者能够实现一致的用户界面。开发者可以轻松地定义主题和风格,并与应用程序中的其他组件协调。
  • 减少代码量:相较于传统的Android开发方法,使用Jetpack Compose可以大大减少代码量,降低应用程序的维护成本,提高开发速度。
  • 提高性能:由于Jetpack Compose可以更好地减少运行时的布局计算,因此可以获得更好的性能。这意味着应用程序可以更快地响应用户操作,提高了用户体验。
  • 引入新的UI功能和动画效果:Compose框架引入了一些新的UI功能和动画效果,例如插值动画、矢量图形绘制和主题样式等,可以帮助开发者创建更加富有表现力和高效的界面。
  • 更好的测试能力:由于Jetpack Compose的UI代码是纯Kotlin代码,因此可以更容易地进行单元测试和UI自动化测试,从而提高应用的质量和可维护性。

Jetpack Compos 的使用

根据目前的信息和观察,Android大厂使用Jetpack Compose框架的情况是相当普遍的。Jetpack Compose作为Android开发领域中的一种新兴框架,具有许多优势,如简洁的语法、高效的开发效率和强大的可扩展性等,这些优点吸引了许多开发者和公司开始使用它。例如:

  • Google:Google Play Store的Android客户端应用就是使用Jetpack Compose构建的。这是一个复杂的、大规模的应用程序,它需要处理大量的数据和用户交互。Jetpack Compose帮助开发者更高效地构建这样的应用程序。
  • Walmart:Walmart是全球最大的零售商之一,Jetpack Compose帮助他们更快地开发Android应用程序,提高了开发效率。
  • Todoist:Todoist是一款流行的任务管理应用程序,他们使用Jetpack Compose来构建他们的Android和iOS应用程序,可以更快地开发出新功能,同时提高了应用程序的可维护性。

这些大规模、高复杂度的Android应用程序的成功案例证明了Jetpack Compose的实力和潜力。

Jetpack Compose的学习

为了大家更详细的了解Jetpack Compose,在此分享一份Jetpack Compose开发指南,资料内容不仅对知识点有详细讲解,而且还有大量代码和示例,非常适用于Android初/中级开发者学习。

第一章 初识JetPack

  • JetPack是什么
  • JetPack和AndroidX
  • AndroidX的迁移

第二章 Compose的设计

  • JetPack Compose环境搭建
  • JetPack Compose新特性和组件依赖
  • JetPack Compose编程思想总结

第三章 Compose入门

  • JetPack Compose入门的基础案例
  • JetPack Compose基础实战

第四章Compose布局

  • Compose State
  • Compose样式(Theme)
  • Compose布局核心控件
  • 自定义布局
  • Compose中的ConstraintLayout

第五章Compose动画

  • Compose SideEffect
  • Compose动画概述
  • Compose Crossfade
  • Compose animateContentSize
  • Animatable
  • Compose自定义动画

第六章Compose图形

  • Compose Canvas
  • Compose绘制API的分析
  • Compose自定义绘制

第七章Compose核心控件总结

  • Scaffold
  • LazyColumn

第八章Compose项目实战

  • 使用Compose实现底部按钮和首页banner以及数据列表
  • 导航规整并实现登陆页面和个人中心页
  • 分类页面的实现
  • 实现搜索页面
  • 项目页面的实现

最后

有需要面试题的朋友可以关注一下哇哇,以上都可以分享!!!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,163评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,301评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,089评论 0 352
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,093评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,110评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,079评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,005评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,840评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,278评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,497评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,394评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,980评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,628评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,649评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,548评论 2 352

推荐阅读更多精彩内容