android - 在范围内找不到 "Greeting"

标签 android ios kotlin-multiplatform

我在 Android Studio 中构建了一个 KMM 项目,但 ios 应用程序似乎看不到共享模块中的类。最初它工作得很好,但现在我修改了共享模块中的一些类,出现了错误。

我的项目结构是这样的:project structure

如您所见,Platform 类中存在一些编译错误,但 Android 应用程序运行正常。错误显示““多平台项目”功能是实验性的,应明确启用”。

iOS 应用程序如下所示:

ios app

稍后编辑:

显然,当我在公共(public)源集中的 shared.build.gradle 中添加此依赖项时,我发现我遇到了这个错误:

        val commonMain by getting {
            dependencies {
//                implementation("io.ktor:ktor-client-core:$ktorVersion")
//                implementation("io.ktor:ktor-client-okhttp:$ktorVersion")
//                implementation("io.ktor:ktor-client-json:$ktorVersion")
//                implementation("io.ktor:ktor-client-serialization-jvm:$ktorVersion")
            }
        }

我需要这些依赖项来向我的 ktor 服务器发出请求。

更新:所以问题是我在公共(public)集中添加了一些库,而这些库没有多平台支持。

最佳答案

我创建了一个新的 KMM 默认应用程序并选择了 cocoapods 选项。在 Android Studio 中,我打开了 iosApp.xcodeproj - 这就是我收到错误的原因。

相反,我不得不打开 iosApp.xcworkspace。通过另外运行 cd iosApp && pod install,我能够从 Xcode 构建和运行应用程序。

open Xcode from Android Studio

关于android - 在范围内找不到 "Greeting",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68621375/

相关文章:

android - 框架 'shared.framework' 缺少此目标 : arm64. Xcode 12.0 kotlin 1.4.10 所需的一个或多个架构

gradle - `runBlocking` coroutine builder is not resolved in the project(其他builder已解析)

java - 如何使用不记名 token 身份验证配置 Glide 以下载图像文件?

安卓工作室 : how to generate signed APK using Gradle?

android - close() 从未在 Android 和 SQlite 中显式调用

ios - 如何在不指定估计行高的情况下使用 iOS 自动调整单元格大小?

iphone - iOS : How a make a text display for a certain duration only during startup program?

ios - 无法从钥匙串(keychain)导出身份

android - 如何使 android 应用程序可用于平板电脑和 pre 11 sdk?

node.js - Kotlin多平台node.js项目由于 “Error: Cannot find module '而失败…'”