我想为 ios 和 android 原生项目构建一个跨平台库。该库将只包含一些与 UI 无关的业务逻辑,类似于 KMM 的结构。
如果我构建了一个 KMM 插件,KMM 项目可以使用它,但是 ios/android 原生项目也可以导入并使用它们吗?
编辑:考虑该库的使用者只是一个 native ios 应用程序,而不是一个 KMM 项目。我不想建议他们将项目转换为 KMM 项目。
如果是,请分享任何示例库吗?
如果没有,我可以使用任何其他解决方案来构建库来支持所有不同的项目 android/ios/KMM 吗?
最佳答案
将 KMM 模块包含到现有 iOS 应用程序中不需要对现有 iOS 应用程序进行任何类型的转换。 KMM 共享组件可以单独开发,并通过将其添加到 iOS 项目的 podfile 中来包含在 iOS 项目中,然后可以像任何其他第三方库一样调用其中的方法。您可以找到有关 KMM CocoaPods 集成的更多信息 here .
# this is the only change needed in the iOS project (in the podfile)
pod 'mymodule', :path => '/path/to/kmm/project'
在 KMM 项目本身中,您可以在 gradle 文件中配置 iOS 目标并将其指向 iOS 项目。有关于此的更多详细信息here
kotlin {
ios()
cocoapods {
summary = "Core library summary"
homepage = "https://www.myproject.com"
ios.deploymentTarget = "14.0"
podfile = project.file("/path/to/ios/project/podfile")
}
//...
}
KMM有很多samples除了上面的文档之外,还提供一些详细信息 here了解如何在 Android Studio 中创建 KMM 项目。
关于android - 我可以直接在ios/android原生项目中使用/导入kotlin多平台库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70724188/