登录社区云,与社区用户共同成长
邀请您加入社区
Kuikly AI 不是“AI 生成代码”的噱头层,而是把Kuikly 跨端框架 + 规则化知识 + 实时工具链 + 运行时预览验证 焊在一起,让跨端开发从“人写多端”进到“人定业务、AI 跑工程”的阶段。对客户端团队来说,它的价值不在于代替程序员,而在于把样板代码、转码、联调、多端对齐这些最耗人力的部分自动化掉。Kuikly 官网KuiklyGitHub 仓库Kuikly AI 仓库。
(不能用。
本课聚焦Kotlin Multiplatform中平台适配与互操作,核心掌握expect/actual编译时契约机制,理解其在类型安全与实现完整性上的优势;对比接口注入方案,明确其在可测试性与灵活性上的优势;深入探讨Compose与SwiftUI双向嵌入架构,通过UIViewController实现跨框架视图融合,并解决WASM平台特殊调用及iOS高刷新率配置等关键问题,为跨平台应用提供系统化解决
本课聚焦Ktor客户端在多平台项目中的应用,通过引擎抽象实现跨平台网络请求统一管理。掌握HttpClient的配置与复用、ContentNegotiation插件实现JSON序列化,并基于Repository模式隔离网络逻辑,为后续ViewModel与依赖注入奠定数据层基础。
本课聚焦 Compose Multiplatform 应用的四端发布:Android(AAB/APK)、iOS(IPA,需macOS与Xcode)、桌面(Dmg/MSI/Deb,不可交叉编译)、Web(静态托管)。掌握签名、打包、CI/CD 策略,理解平台约束,实现自动化构建与部署,完成从开发到交付的闭环。
本课聚焦测试与调试,构建“测试金字塔”架构意识:通过 commonTest 实现跨平台单元测试,使用 Fake 替代 Mock 提升兼容性;掌握 runComposeUiTest 与桌面 JUnit 测试的差异及适用场景;借助 Turbine 断言 StateFlow 状态序列;利用 Kotlin/Native 的 GC 统计检测内存泄漏,实现高效、可靠的多平台应用质量保障。
本课系统讲解 Compose Multiplatform 资源管理与主题设计。通过统一的 composeResources 目录结构,实现跨平台资源共享,利用类型安全访问器(如 Res.drawable.logo)高效引用图像、字体和字符串。支持语言、主题等限定符实现本地化与深色模式适配。结合 Coil 3 图片库,基于 Ktor 网络引擎实现网络图片异步加载与缓存。最后构建自定义 Materia
本课聚焦于多平台开发中 ViewModel 的跨平台实现与状态管理。通过引入单一状态对象与 StateFlow,实现状态的不可变性与可追溯性;结合 collectAsStateWithLifecycle 安全收集状态,确保生命周期一致性。采用 Event Sink 模式收敛事件入口,提升代码可维护性。掌握 MVVM 架构核心原则,为后续平台适配与架构深化奠定基础。
本课聚焦导航与路由,讲解 Navigation Compose 的三大核心概念:路由、目的地与 NavHost。通过类型安全路由实现编译期校验,利用 NavHost 管理返回栈,支持参数传递与深层链接。掌握 navigate() 与 popUpTo 等操作,实现精准导航控制,并结合 SavedStateHandle 在 ViewModel 中安全获取参数。同时介绍导航动画与跨平台兼容性,为构建可维
本课聚焦Compose布局与组件核心,系统掌握Column/Row/Box嵌套组合策略,理解LazyColumn按需渲染与key优化机制,实现长列表高性能展示。深入学习Material3组件库,构建“布局即结构,组件即语义”的开发思维,为后续导航、状态管理与跨平台开发奠定坚实基础。
本课深入解析 @Composable 的编译器机制,揭示其通过 Composer 参数注入、Slot Table 构建与跳过重组等技术实现高效响应式更新。掌握状态管理核心 API(mutableStateOf、remember、rememberSaveable),理解重组作用域与稳定性规则,建立基于副作用与链式调用的 Modifier 思维,为后续开发高性能 Compose 应用奠定语法地基。
最近 JetBrains 又给 KMP 的编译流程加了commonMain,比如:IDE 只认公共 API编译 JVM target 时,编译器又可能看到依赖库的 JVM.jar也就是同一行代码可能出现 IDE 报错但能编译通过、IDE 跳到一个函数但最终执行的是另一个函数,甚至 IDE 类型推断正确而 JVM 编译失败之类的问题。所以 Separate Compilation 的作用就是 com
本文记录在官方 KMP 基础上集成鸿蒙版 Compose Multiplatform(CPF-KMP-CMP)的完整链路,实现 commonMain 同时编译 Android APK、JVM 桌面包与 HarmonyOS HAP。核心思路是:插件使用适配版以支持 ohosArm64 和 export 机制,依赖则通过“消费类路径重映射”仅在目标平台切换为官方版本,避免 Android 与 JVM
→ ArkUI 鸿蒙 PC 页面。
本课深入讲解 Compose Multiplatform(CMP)跨平台开发,通过真实电商场景对比传统多端开发,揭示其可节省35%-40%成本。详解KMP与CMP关系:前者共享逻辑,后者扩展至共享UI。课程涵盖项目结构、expect/actual处理、状态管理、导航与性能优化,并以8个带注释参考答案的练习强化实战能力。适合希望用一套Kotlin代码覆盖Android、iOS、桌面及Web的开发者。
本课聚焦 Compose UI 测试,通过真实场景详解 createComposeRule 与 createAndroidComposeRule 的选用,掌握语义树查找、测试标签与可访问性属性的使用,实现节点交互、异步同步、Hilt 集成及 KMP 共享代码测试。结合八道带注释练习与参考答案,构建从组件到端到端的测试金字塔,确保界面“正确”——让自动化测试成为设计的最后一块拼图。
本文深入探讨KMP工程实践,聚焦2026年新默认项目结构——共享库(shared)与平台入口模块分离,实现代码模块化。详解expect/actual的编译时强制约束优势,推荐函数级使用,并区分其与运行时条件编译的本质差异。提出“接口+依赖注入”替代expect/actual处理服务依赖,介绍Koin注解方案实现无expect/actual的平台适配。最后分析三种共享策略:仅共享逻辑、部分共享UI、
本课对比Jetpack Compose与Compose-Multiplatform,介绍KMP跨平台架构:共享模块(shared)复用UI逻辑,Android与桌面端分别通过Activity和main+application+Window入口。通过expect-actual机制隔离平台差异,实现一套代码运行多端。强调不可忽视平台适配,新项目应使用统一资源管理,避免重复维护。核心思想为“通用代码放s
本文在前序基础上,通过引入Android客户端与改造Flask网关、Linux consumer,实现跨平台(Android+Windows+Linux)全链路通信。利用ADB反向映射解决跨端连接问题,构建基于RabbitMQ的双向消息通道,并引入验证码与token机制,实现动态权限管理与身份认证。项目完成多实例并发、权限分级、网关校验等核心功能,初步达成可扩展的拟真生产环境目标,为后续数据库优化
本教程系统复盘Compose开发核心知识点,涵盖布局、状态管理、性能优化、导航与MVI架构,梳理高频坑点如状态丢失、重组卡顿、内存泄漏等,并明确SavedStateHandle与Room分工。总结单Activity架构适用边界,提出动画、自定义绘制、KMP跨平台等进阶路线,助力开发者构建高效可维护的Compose应用。
共享电单车用户端重构中,采用“骑行主循环KMP+CMP原生化、长尾页面H5化”策略。核心业务(地图、扫码、蓝牙开锁、后台定位)用Kotlin Multiplatform统一实现,保障跨端一致性;钱包、发票等49个长尾页面复用UniApp生成的H5,免于重写。通过接口化封装平台能力,实现双端共用89%代码,仅2天完成迁移,兼顾性能与运营敏捷性。
Source Set职责commonMain所有目标共享:数据模型、Result 封装、业务规则、Repository、UseCase、网络逻辑、数据解析、表单校验Android Log、DataStore 实现、Android 平台信息、Android SDK 适配、Android 网络与存储实现iosMainiOS 日志、Keychain/NSUserDefaults 实现、Apple 平台信
Flutter、KMP、CMP 都参与跨平台开发,但技术路线不同:Flutter 是用 Dart 构建完整跨平台应用;KMP 是用 Kotlin 建设可被多平台复用的业务底座;CMP 在 KMP 基础上解决 Compose UI 的多平台共享。三者不是替代关系,关键选型依据是业务核心、UI 与平台差异各放在哪一层,以及团队愿意承担多少桥接成本。
让 Kotlin 跨平台开发者能够用已有的技术栈进入鸿蒙生态。它的价值不仅在于技术适配,更在于降低了鸿蒙应用开发的门槛——开发者可以用熟悉的 Kotlin 语法、Android Studio 工具链、Compose 声明式 UI,编写出同时支持 Android、iOS 和 HarmonyOS 三大平台的应用。传统鸿蒙开发使用 CPF-KMP-CMP需要学习 ArkTS用 Kotlin 即可使用 D
一套 Kotlin,覆盖六端。Kuikly 的价值可以收敛成一句话——让以 Kotlin/Android 为主的团队,用熟悉的一门语言和一套代码,就把 UI 和业务逻辑铺到 Android、iOS、鸿蒙、Web、小程序、macOS 六个平台上,各端都是原生控件,还不用为每个平台各养一支 UI 团队。一套 Kotlin 覆盖六端 UI:逻辑 + UI 都收进同一套 Kotlin,编译到各端渲染成原生
中国移动资深Android面试重点考察架构落地能力与跨团队协作经验,核心涉及:1.组件化架构设计(业务分层、路由解耦、资源隔离);2.MVVM实现(Repository数据聚合、单向数据流);3.性能优化体系(模块化编译加速、双通道推送保活);4.稳定性建设(崩溃防护、热修复决策);5.技术选型权衡(跨端方案场景化应用)。面试官会深度追问技术决策依据、实际业务落地效果及典型问题解决方案,尤其关注复
本文介绍了Kotlin Multiplatform(KMP)项目中因Gradle叶子节点名称冲突导致的构建死锁问题及解决方案。当不同层级模块使用相同叶子名称(如:provider:media和:scenario:media)时,Kotlin Gradle Plugin的元数据解析机制会误将模块自身识别为目标依赖,导致构建循环。文章对比了三种常见方案后,提出最佳实践:在settings.gradle
Kotlin Multiplatform (KMP) 2026进化与全栈开发实践 2026年,KMP已从跨平台移动开发工具蜕变为覆盖移动端、后端和AI Agent的全栈框架。KotlinConf 2026宣布了K2编译器、Compose多平台支持、Koog AI框架等重大更新。KMP通过expect/actual机制实现编译时多态,支持纯共享代码、接口+实现和平台扩展三种开发模式。
本文探讨了在双仓库(Polyrepo)架构下实施 Kotlin Multiplatform (KMP) 的实战方案,突破了官方教程中单仓库和全栈跨端的理想化设定。针对大中型企业 Android/iOS 独立仓库的现状,提出以下核心方案: 物理连接:通过同级目录结构(如Git/Android和Git/ios-app)实现跨仓库访问,要求团队统一开发环境路径。 心智模型:Xcode 将 KMP 编译产
ios:shared/src/iosMain也有可能在shared/src/nativeMain(因为ios也属于native层);expect想当于一个抽象的接口,理解成字面意思,期待,期待各个平台下面有真实(actual)的实现。创建的actual分别位于shared/src/androidMain、shared/src/jvmMain、shared/src/nativeMain里面。补充:这
里面重要的目录有commonMain、androidMain、iosMain、jvmMain。然后一些抽象的方法定义(expect actual),其他几个main里面放的各个平台的实现(actual)。然后这几个app目录都调用的shared目录里面commonMain里面App()作为自己平台里面的界面入口,从而达到共用一套界面的效果。(2)和shared目录平级的还有androidApp、d
对新手来说,创建 KMP 项目最稳的方式不是在 Android Studio 里点(不同版本菜单不一样、还可能要装插件),而是用 JetBrains 官方的 KMP 网页向导——它帮你把一切版本、配置都配好,生成一个开箱即用的项目。我们用这个。
Kotlin编程基础:条件判断、循环与函数 本课讲解了Kotlin的三大核心语法结构: 条件判断:if/else支持返回值特性,when语句优雅处理多分支(支持范围判断和多重条件) 循环结构:for循环支持..、until、downTo等区间操作符,while需注意终止条件 函数定义:使用fun关键字,支持返回值类型声明、默认参数和具名参数调用 特别亮点:Kotlin的if表达式可直接赋值,whe
这篇文章介绍了Kotlin编程语言的基础知识,包括: 程序结构:fun main()是程序入口,println()和print()用于输出内容 变量声明:val用于不可变变量,var用于可变变量 字符串模板:使用$符号嵌入变量或表达式 基本数据类型:Int、Double、Boolean、Char、String 类型推断:Kotlin可以自动推断变量类型 文章还包含一个练习题:如果将val name
1. 什么时候该选 Flutter?公司是初创团队,急需最快速度把产品在 iOS 和 Android 双端上线试错。App 主要是信息展示、电商购物、社区社交、表单交互(比如大部分的商城、新闻、打车软件)。公司缺乏充足的预算去养两支原生开发团队。你希望在不同系统版本下,UI 展现出绝对的一致性。2. 什么时候该选 Kotlin(原生/KMP)?App 严重依赖系统底层和硬件交互(如:专业的相机修图
Koin是一款面向Kotlin开发者的轻量级依赖注入框架,已在GitHub获得近万星标。它采用纯Kotlin DSL声明依赖关系,无需复杂注解处理器,具有以下特点: 提供编译期安全检查,通过插件在编译阶段验证依赖图完整性; 原生支持Kotlin Multiplatform,统一多平台依赖管理; 配套开发工具包括IDE插件和性能监控平台; 提供企业级LTS版本支持。 相比Dagger等方案,Koin
Kotlin协程库(kotlinx.coroutines)是JetBrains官方提供的异步编程解决方案,通过将异步操作封装为类似同步代码的形式,简化了回调嵌套、线程切换等问题。该库采用模块化设计,支持多平台(JVM/JS/Native),提供结构化并发、异常处理等机制,广泛应用于Android、后端和KMP项目开发。虽然存在调试复杂和学习曲线等局限,但作为Kotlin生态的核心库,其官方维护、质
随着 Kotlin Multiplatform (KMP) 进入稳定期,Compose Multiplatform 的跨端能力也日益成熟。我们是否真的能用一套代码,搞定 Android、iOS、Web、Desktop 甚至后端?