gpt4 book ai didi

ios - 在 Xcode 10.1 中创建和使用 swift 静态库

转载 作者:行者123 更新时间:2023-12-01 15:47:22 27 4
gpt4 key购买 nike

我计划创建 swift 静态库并在 ios swift 应用程序中使用。我创建了一个快速静态库调用 SimpleLib,它包含一个返回 Hello World 字符串的公共(public)类 Greeting:

//
// Greeting.swift
// SimpleLib
//

import Foundation

public class Greeting {
public func Hello() -> String {
return "Hello World";
}
public init() {

}

public static func SayMorning() -> String{
return "Hi, Morning";
}
}

swift 静态库项目如下所示:

enter image description here

module.modulemap 定义如下:

module SimpleLib {
header "SimpleLib-Swift.h"
export *
}

我构建并生成了一个 libSimpleLib.a 文件,我将 .a 和其他文件(互联网上的其他帖子提到需要放在应用程序文件夹中)放在应用程序文件夹中:

enter image description here

在应用程序项目中,我在 FREAMEWORK_SEARCH_PATHS、LIBRARY_SEARCH_PATHS 和 HEADER_SEARCH_PATHS 中包含 Libs 路径,并在 Linked Framework 中包含 .a 文件

enter image description here

但是,当我尝试在 AppDelegate 中引用 Greeting 类时,出现错误 - 使用未解析的标识符“Greeting”

//
// AppDelegate.swift
// testStatic
//

import UIKit
import SimpleLib


@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

var window: UIWindow?

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
var s = Greeting
return true
}
......
}

enter image description here

如何在静态库中制作Swift对象可以引用App.在 swift 静态库中导出类/函数的正确步骤是什么?有人成功地在 iOS 应用中构建和使用了 swift 静态库吗?

最佳答案

在应用的 SWIFT_INCLUDE_PATHS 设置中包含您的 module.modulemaparm64.swiftmodule 路径。

关于ios - 在 Xcode 10.1 中创建和使用 swift 静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54226824/

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