别具特色的跨平台移动开发 - Kotlin Multiplatform Mobile

前言

对于移动端开发来说,跨平台是一个始终跳不能避免的话题。

而在跨平台移动的技术选择上来说,最流行两个就是React Native与Flutter了。

这两种方式都有它们各自己的优点与缺点。对于跨平台移动开发究竟是该React Native还是Flutter对大众来说是个比较难的选择。

当然,我这篇文章不是来对比这两个技术的,而是来介绍另一个移动跨平台技术的选择 – KMM

在这里插入图片描述

什么是KMM

KMM的全称是:Kotlin Multiplatform Mobile,它是jetbrains公司的产品。是一个业务跨平台的移动端开发框架。

在KMM的官网上,它对自己的最简明的一句介绍是:

Share the logic of your iOS and Android apps while keeping the UX native

用中文来理解就是:

不同平台共享业务逻辑的同时又保持各自原生的UI实现

KMM 的优势

相比其他的跨平台方案,比如RN、Flutter,KMM自带如下优势:

1、无需内置多套引擎 (runtime),包体积增量更少 。

2、对于 Android 开发者无需多学习一套编程语言和编程思想,门槛更低 。

3、基于双端标准组件输出,审核被拒风险较小(iOS)。

4、更强的互操作性, 支持与本地编程语言的双向互操作,可以直接使用现有库,避免了众多基础组件的重复建设。

5、在保持原生开发的基础上,使业务模块重用。

怎么学习KMM

虽然说KMM框架对于Android开发者来说门槛很低,但是也架不住网上的博客文章零散,断片和不全面呀。

所以这里小编花费大量时间收集和整理,将KMM框架方面的知识点整理成了《KMM跨平台框架入门教程》,并借此文章无偿分享给对KMM框架感兴趣的朋友。有需要的朋友可以扫描下方二维码领取~

第一章 简介与基本环境搭建

  • 什么是KMM?
  • Kotlin Mutiplatform 之间的关系
  • 与其他跨平台框架的简单对比
  • 跑一个 KMM Demo
  • KMM 工程文件结构

在这里插入图片描述

第二章 在现有工程中集成 KMM

  • 为什么要在现有工程中集成?
  • 如何在现有工程中集成 KMM

在这里插入图片描述

第三章 平台差异化实现

在这里插入图片描述

第四章 与依赖库交互

  • KMM 的依赖类型
  • 使用 Common 或 Android 依赖
  • iOS 依赖

在这里插入图片描述

第五章 处理多线程

  • 为什么需要在 KMM 中处理多线程?
  • 可行的多线程切换方式
  • KMM 多线程需要注意的问题
  • 个人比较推荐的异步工作实现方案

在这里插入图片描述

第六章 使用 SQLDelight 操作数据库

  • 数据库在 App 中的作用
  • SQLDeilight 简介及特点
  • 使用 SQLDelight 开发的流程
  • 其他使用建议及注意事项

在这里插入图片描述

第七章 处理 HTTP 网络请求

  • 背景
  • Ktor 是什么?
  • 为 KMM 模块配置 Ktor
  • 创建 Ktor 的 HttpClient
  • 发送一个简单的 HTTP 请求
  • 自定义请求
  • 处理响应
  • Ktor 的其他功能
  • KMM 网络能力建设

在这里插入图片描述

第八章 KMM跨平台实战

  • 跨端的 MVI 框架 —— MVIKotlin
  • 对 Jetpack 架构组件移植的失败尝试
  • 使用 kotlinx.serialization 对 SQLite 数据库反序列化
  • 携程机票 App KMM 跨端 KV 存储库 MMKV-Kotlin

在这里插入图片描述

最后

相信这份KMM框架学习资料,一定可以为大家在KMM的学习上提供强有力的帮助和支撑,快人一步成为真正的高级Android跨平台开发者。

猜你喜欢

转载自blog.csdn.net/weixin_43440181/article/details/130563656