问题标签 [swift-package]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
45 浏览

swift - 从 Objective-C 访问 Swift Package 项目的正确方法是什么?

场景: 我已经构建了一个 Swift <-- package simple App,它正在工作。
现在我正在尝试将其转换为 Objective-C <--- 包应用程序。

问题#1:我如何正式导入包?
我读过使用“@import”与旧的“#import”。

现在我得到“'init'不可用”。

在此处输入图像描述

这是包(“RicPackage.swift”):

在此处输入图像描述

我至少想做一些简单的事情,比如:

0 投票
2 回答
84 浏览

ios - Objective-C 访问 Swift 包函数

目标:在 Objective-C 中使用 Swift Package。
我要做的就是对从 ObjC 访问 Swift vars & func() 的正确语法有一个简单的、基本的理解。

这是关于将 Objective-C 与 Swift 包一起使用的问题的第二部分。

在此处输入图像描述

这是我正在尝试访问的 Swift 包文件...
我专注于 Swift访问。
但我也想知道如何访问struct

这是试图访问 Swift-Package vars & func 的 Objective-C 父级:

在此处输入图像描述

问题:访问的正确语法是什么:

  1. Swift 类和结构函数,
  2. 斯威夫特 var/let?
0 投票
1 回答
22 浏览

ios - Objective-C:Swift Package 函数中的多参数方法语法

目标:掌握 ObjC <--> Swift API 语法
问题:使用多参数函数 API。

我已经很多年没有做 ObjC 了,现在我需要将 ObjC 与 Swift 包接口。
这是 Swift-Package 代码:

我在使用多参数语法时遇到问题。
Objective-C 喜欢将 'with' 或 'to' 等附加到参数名称。我通过反复试验了解到这一点。

但是我在使用多参数语法时遇到了问题:

在此处输入图像描述

问题:多参数 Objective-C 方法调用的正确语法是什么?

0 投票
1 回答
72 浏览

ios - 如何显示捆绑在 Swift 包中的 SVG?

我正在尝试在 Swift 包中显示图像包。

let image = UIImage(named: "image", in: Bundle.module, compatibleWith: nil)当我使用png图像时,此代码有效。但是当我使用svg同名 (image.svg) 时,图像是nil.

这就是我定义保存图像的资源文件夹的方式Package.swift

0 投票
0 回答
20 浏览

swift - 如何更改 Swift 库中的构建设置?

我知道如何访问和更改 Swift 应用程序中的构建设置。但是,当我尝试在 Swift 库中做同样的事情时,那里什么都没有。单击文件导航器顶部的库名称只是打开 Package.swift 文件,并且没有 .xcodeproj 文件。

是否可以控制 Swift 库中的构建设置?如果是这样,怎么做?

0 投票
1 回答
47 浏览

swift-package-manager - Swift 包依赖:“没有这样的模块......” - 为什么?

目标:学习如何向 Swift 包添加导入。
作案手法:使用 Apple 提供的示例作为基础。添加另一个导入(即 Alamofire)
结果: Alamofire 确实导入;但它的模块“找不到”。

包装:

在此处输入图像描述

来源:

在此处输入图像描述

问: 为什么会这样?
我错过了什么?

0 投票
0 回答
19 浏览

swift-package-manager - Swift 包构建正常,但由于派生数据中缺少“SourcePackages”,测试总是失败

环境:
MacOS 11.5.2 Mini M1。
Xcode 版本 13.0 测试版 4 (13A5201i)

场景: 我是一个 SPM 新手,正在构建一个依赖 Alamofire 的 Swift Package 演示。
我专注于测试,做“Hello World”之类的事情。
初始模板有效;但是在构建了我存储在 GitLab 中的几个版本(标签)后,测试失败了。也就是说,它只构建然后中止并记录以下错误:

在此处输入图像描述

我清理了测试结果和构建文件夹;然后重建并重新运行测试。
同样,测试因上述抱怨而失败。

其他一切都好。

补救措施,还是可能的 Apple Bug?

0 投票
0 回答
37 浏览

swift - 将 Swift 包拆分为两个(或多个)不同的导入

我正在使用 SPM 进行依赖管理,这是我的Package.swift

问题是,由于我正在构建一个个人包,它收集了许多不相互依赖的不同实用方法和类,我希望能够将它拆分为不同的“模块”或“导入”。

例如,我在Sources:Widgets和中有 2 个子文件夹Networking。第一个收集了我所有的 UIView / UIControls 小部件,第二个收集了帮助我构建 API 类的协议包。

考虑到我有时在我的项目中不需要一个或另一个,我希望能够将这两个分成两个导入。使编写import MyPackageNetworkingimport MyPackageWidgets

我试过了:

但在这方面没有运气。有谁知道如何做到这一点?

0 投票
0 回答
60 浏览

ios - Swift Package 平台是最低版本吗?

我在网上看到的所有文章都清楚地说Package.swift中有这样的记录:

只意味着一件事 - 该库将仅为 iOS 构建(最低版本为 13),但是当我的源代码未构建时出现错误,即某些内容仅在 macOS 10.15 或更高版本中可用,我遇到了这种情况。我认为某处有一些默认的 macOS 版本。我只找到了我的话的一个证据,这个答案在 SO

那么,它只是最低版本吗?

0 投票
0 回答
277 浏览

ios - 使用 Swift 包构建静态库

我尝试以这种方式构建静态库:

但是在将 .a 文件链接到项目后,我无法从该文件中导入任何类。它说“没有这样的模块'myLibNameHere'”

什么是构建库的正确方法,而不是可以提供给客户在他的 iOS 项目中链接?主要条件是:

  • 客户不应该看到我的图书馆的来源
  • 该库必须支持真实设备(来自 iOS 14.0 的 iPhone)和模拟器

毕竟。我是否应该再构建一个库(用于模拟器):

并将它与以前构建的库一起加入lipo?或者 Swift 包提供了另一种方式,比如:

或类似的东西?