“...仅在 iOS 13.0 或更高版本中可用”在面向 iOS 15.0 的项目中

问题描述 投票:0回答:3

我使用的是 Xcode 13.4,并使用“带有手表应用程序的 iOS 应用程序”项目模板创建了一个新的 SwiftUI 项目。主应用程序的目标设置为 iOS 15.5,手表目标设置为 WatchOS 8。一切都在模拟器上正常构建和运行。

我刚刚使用 Xcode 的 File -> Add packages... 菜单栏选项将

watch-date-picker Swift 包
(为 WatchOS 添加日期选择器的包)添加到我的项目中:

enter image description here

现在我无法构建我的项目 - 我在添加的 watch-date-picker 包的代码中收到大量错误,抱怨各种事情都是

only available in iOS 13.0 or newer
。我什至还没有尝试使用该库 - 我刚刚通过
File -> Add Packages
添加了它。以下是套件设置:

// swift-tools-version:5.5
import PackageDescription

let package = Package(
  name: "watch-date-picker",
  defaultLocalization: "en",
  platforms: [
    .watchOS(.v8)
  ],
  products: [
    .library(name: "WatchDatePicker", targets: ["WatchDatePicker"]),
  ],
  targets: [
    .target(name: "WatchDatePicker", dependencies: []),
    //.executable(name: "WatchDatePickerExamples", dependencies: ["WatchDatePicker"]),
  ]
)

我很困惑为什么会收到此错误 - 据我所知,我的目标是所有内容的最新版本 - iOS 15.5 和 WatchOS 8.5。谁能解释为什么会这样以及我能做些什么来解决它?我错过了什么吗?我需要做些什么来告诉包只为 WatchOS 而不是 iOS 构建吗?我尝试过清理、删除派生数据、关闭 Xcode,但没有任何效果。谢谢!

enter image description here

enter image description here

enter image description here

ios swift xcode swiftui watchkit
3个回答
8
投票

修改

Package.swift

// swift-tools-version:5.5
import PackageDescription

let package = Package(
  name: "watch-date-picker",
  defaultLocalization: "en",

// swift-tools-version:5.5
import PackageDescription

let package = Package(
  name: "watch-date-picker",
  platforms: [.iOS(.v15)],
  defaultLocalization: "en",

我不明白为什么。但是,这是我迄今为止使用的解决方法。它对我有用。


0
投票

添加包时,您可以说出它属于哪个目标。听起来您在添加此包时忽略了使该包成为 Watch 目标的一部分。

我建议完全删除包装并重新开始。


0
投票

我也有同样的问题。对我来说更新包有效! enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.