gpt4 book ai didi

ios - 导入gradle插件生成的cocoapods时,Xcode显示快速的编译器错误

转载 作者:行者123 更新时间:2023-12-02 13:41:45 29 4
gpt4 key购买 nike

我试图在我的iOS项目中使用通过cocoapods gradle插件创建的cocoapods使用共享代码。
Podspec的创建没有问题。
我共享的build.gradle:

plugins {
id("org.jetbrains.kotlin.multiplatform")
id("com.android.library")
id ("org.jetbrains.kotlin.native.cocoapods")

}

android {
compileSdkVersion 29
buildToolsVersion '30.0.0'

defaultConfig {
minSdkVersion 19
targetSdkVersion 29
versionCode 1
versionName "1.0"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles 'consumer-rules.pro'
}

buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}

version = "1.0"

kotlin {
ios()
android()

cocoapods {
// Configure fields required by CocoaPods.
summary = "Some description for a Kotlin/Native module"
homepage = "Link to a Kotlin/Native module homepage"

// The name of the produced framework can be changed.
// The name of the Gradle project is used here by default.
frameworkName = "toshlShared"
}

sourceSets {
commonMain.dependencies {
api 'org.jetbrains.kotlin:kotlin-stdlib-common'
}

androidMain.dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation "org.jetbrains.kotlin:kotlin-stdlib-common:$kotlin_version"
}

iosMain.dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-common:$kotlin_version"
}
}

}
当我运行pod install时,一切看起来都不错,但是当我运行ios应用时,我看到此错误:
enter image description here
编辑:用我的单个.kt文件添加了我的项目文件夹结构(可从android代码访问)
enter image description here

最佳答案

据我所知,这里的问题是由项目结构引起的。在Gradle脚本中,声明了三个目标:一个是Android,另一个是iosX64 + iosArm64快捷方式(请参见here)。对于此布局,每个iOS目标(iosX64Main, iosX64Test, iosArm64Main, iosArm64Test)将有两个编译,

a compilation per Android build variant, for Android targets;


在这种特殊情况下,只有源文件 SharedUtils.kt位于Android main编译的源集上的目录中。这意味着它不会进入任何iOS编译。要共享此源文件,应将其重新定位到通用代码。 Kotlin Multiplatform中有两种默认的通用代码源集: commonMaincommonTest。因此,应将源代码放置在 src/<sourceSetName>/kotlin目录下(在这种情况下为 commonMain)。

关于ios - 导入gradle插件生成的cocoapods时,Xcode显示快速的编译器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62672538/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com