乔帮主发布iPhone以降,把世界推向了智能手机时代,随之而来的是移动互联网大潮,一时间移动应用开发变得炙手可热起来,渐渐的超越了传统桌面端和传统前端,成为了主流。随之而来的就是重复开发的问题,同样的业务需要在Android上面实现一次,在iOS上面实现一次,通常也需要在Mobile Web(移动端H5)实现一次,自此跨端开发成了移动互联时代一个必须要攻克的难题。
实战:把一个现有的Compose项目转化为CMP项目
通过前面两篇文章的学习,我们已经对CMP有了一定的了解,接下来要进入实战阶段。在现实的世界中极小数项目会从0开始,今天重点研究一下如何把一个现成的用Jetpack Compose开发的Android项目转成CMP项目。
Compose大前端从上车到起飞
在前面的一篇文章赶紧上车开启Compose大前端之路中我们学习了CMP的基本概念以及如何创建一个CMP项目。今天将继续学习CMP,深入研究项目的配置方法,了解CMP的内部机制并总结一些CMP开发的最佳实践。
赶紧上车开启Compose大前端之路
在前面的文章中,我们一再强调Jetpack Compose是一个声明式的UI框架,尽管我们都是基于Android开发来实战的,但Compose并不局限于Android开发,它其实与特定的开发平台没有关系,是可以做到跨平台开发的。事实上JetBrains早就已经准备好了一套工具,以让Compose跨平台,开发多端应用,跻身于大前端的一员。今天就来学习一下如何使用Compose进行大前端开发。
用Compose中的CompositionLocal来暗渡陈仓
通过前面的学习我们知道Jetpack Compose是一个声明式的UI框架,采用的是函数式编程思想,直观上来看就是一坨函数从上调到下。当函数需要数据时,会通过函数调用的参数来传递,一般来说这也没有什么问题。但当需要的数据特别多时,特别是对于一些非业务逻辑本身的数据(输入与输出),如上下文环境变量(Context,或者主题之类),都通过函数调用的参数传递就难免会让代码变得非常的庞杂和臃肿。这时候就可以使用CompositionLocal,一种在组合树中隐式的从上到下传递数据的方法,我们来具体地看一下。
给Jetpack Compose添加Native支持
让Activity更加优雅地跳转
有过Android开发经验的小伙伴对startActivityForResult)以及onActivityResult)一定不陌生,正是这一对API让组件 的复用变成可能。今天就来学习一下如何在函数式的范式中驾驭Activity的跳转。
喜迎国庆,用Compose赶制一面五星红旗
搞定在Jetpack Compose中优雅地申请运行时权限
轻松解决Jetpack Compose中的一些痛点问题
暑去秋来,金桂飘香,不知不觉中我们已经练完了『降Compose十八掌』,相信通过这一系列文章能够对Jetpack Compose有足够的理解,并能在实际项目中进行运用。今天将继续Compose之旅,总结一下Compose使用过程中经常会遇到的一些痛点问题,并学会如何优雅的解决这些问题。








