kotlin 如何用KMM生成xcframework嵌入和签名AppleFrameworkForXcode仅生成框架

zfycwa2u  于 2023-01-31  发布在  Kotlin
关注(0)|答案(1)|浏览(188)

我创建了一个KMM项目,也创建了一个构建阶段调用./gradlew embedAndSignAppleFrameworkForXcode的Xcode项目,它运行成功,但是生成了一个.framework,而不是.xcframework;而现代Xcode确实需要后者。
我是不是错过了什么?我读到Kotlin的现代版本可以直接生成xcframework,但我不知道是怎么生成的。有没有一个gradle任务可以实现这一点?
非常感谢:)
根据Kdoctor,我有:Xcode 14.1Android Studio 2021.3Kotlin插件:213-1.7.20KotlinMM插件:0.5.1(213)-60

wgeznvg7

wgeznvg71#

您应该声明XCFrameworks,然后它将为您注册三个任务:assembleXCFrameworkassembleDebugXCFrameworkassembleReleaseXCFramework
下面是一个build.gradle的示例:

import org.jetbrains.kotlin.gradle.plugin.mpp.apple.XCFramework

plugins {
  kotlin("multiplatform")
}

kotlin {
   val xcf = XCFramework()
   val iosTargets = listOf(iosX64(), iosArm64(), iosSimulatorArm64())

   iosTargets.forEach {
      it.binaries.framework {
          baseName = "shared"
          xcf.add(this)
      }
   }
}

有关详细信息,请访问Kotlindocs。

相关问题