[英]Kotlin Multiplatform - Strategy sharing between iOS + Android
[英]What can be shared through Kotlin Multiplatform between Android and iOS?
有人会明确描述通过 Android 和 iOS 之间的 Kotlin Multiplatform 究竟可以共享什么? 例如,我们在 Android 中有:UI (xml) <---binding (Kotlin) ---> 业务逻辑 (Kotlin)。 根据 JetBrains,UI (xml) 以下的所有内容都可以共享。 这是否意味着也具有约束力? 我也听说100%可以共享。 与 UI 相比,它是如何完成的?
谢谢和最好的问候
Kotlin Multiplatform 背后的主要思想是您共享引擎盖下的内容。 这意味着您可以在 UI 保持原生状态的同时共享基本的业务逻辑(注意:在 Android 中,UI 不仅是 XML,而且是带有其绑定的 Fragment/Activity)。 例如,一种常见的方法是使用架构模式(如 MVVM/MVP),公开您的演示者/视图模型并使用接口(在 Swift 中也称为协议)与本机 UI 交互。 演示者、用例、存储库和 API 调用与 kotlin 共享,并且 UI 在每个平台中实现。
对于需要使用特定于平台的代码来实现的代码(如 Android 中的 SharedPreferences 和 iOS 的 NSUserDefaults),请查看 Kotlin 文档中的预期实际机制)
此外,您还可以共享特定于平台的库的抽象。 例如,您可以定义一个与任何平台库交互的接口,在 iOS/Android 端提供实现,并从共享模块与其交互。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.