当前位置: 首页 > 面试题库 >

创建和导入Swift框架

韩寂离
2023-03-14
问题内容

我是快速编程的新手。我需要创建一个纯swift框架,并将其导入
到我现有的纯swift项目中。当我尝试导入swift框架时,出现
以下错误消息

"Could not build Objective-C module '<myModule>'"

Framework File Structure

Test.h

 import Foundation

public class Test {
    class func printTest() {
        println("111");
    }
}

Asdf.h

import UIKit
public class Asdf: Test {
    class func echo() {
        println(888);
    }
}

myModule-Swift.h

#ifndef <myModule>_<myModule>_Swift_h
#define <myModule>_<myModule>_Swift_h

#endif

构建框架后,我在现有项目中添加了框架并得到了这个项目结构和导入问题屏幕

我究竟做错了什么?感谢帮助!

@findall评论答案-我试图将所有框架文件添加到我的项目根文件夹和项目文件夹中,但是再次遇到相同的错误将Framework文件添加到项目根目录

在项目文件夹中添加Framework文件


问题答案:

I’ve done with the following steps.

我已经完成了以下步骤。

  1. 创建一个框架项目,例如名为“ FooKit”。(Cocoa Touch Framework待选择)
  2. 创建一个“ .swift”文件,并在其中添加一个公共符号,例如public func foo()。
  3. 创建一个使用端(应用程序)项目。(我选择了Single View Application)
  4. 通过Finder打开“ FooKit”的根目录,将“ FooKit.xcodeproj”拖到此处,然后通过将其拖放到应用程序项目中Project Navigator。
  5. Target Dependencies在应用程序的Build Phases设置中添加“ FooKit” 。
  6. Embedded Binaries在应用程序的General设置中添加“ FooKit.framework” 。
    现在,您可以在用户端应用程序中像这样的代码进行构建。

    import FooKit

    func bar() {
    foo()
    }



 类似资料:
  • 问题内容: 我已经通读了Apple的Swift文档,却对如何创建模块或如何将类或结构成员定义为私有或公共一无所知。 语法中有对import语句的引用,但找不到有关它做什么或如何使用的信息。 有谁知道我在哪里可以找到这个? 问题答案: 更新资料 您可以使用框架对快速项目进行模块化。 我们通过为每个模块创建单独的框架项目并通过Xcode工作区将它们链接来实现模块化。当我们将组件分为不同的项目时,它看起

  • 问题内容: 我正在尝试导入一个项目。我在“构建阶段”->“使用库链接二进制文件”中添加了内容。 Objective-C的作品: 但是在Swift中,我得到一个错误: 根据Swift文档: 导入外部框架 您可以导入具有纯Objective- C代码库,纯Swift代码库或混合语言代码库的外部框架。无论框架是用单一语言编写还是包含两种语言的文件,导入外部框架的过程都是相同的。导入外部框架时,请确保将要

  • 问题内容: 我将swift框架导入到Objective-C项目中,如下所示: 问题在于我正在导入框架的类只能识别某些类。 被认可的课程: 该类不是: 它们都是公开的,那么为什么第一个在工作空间中被识别,而另一个却没有? 我也在头文件MyFramework-Swift.h中看到一个类 出现而其他不出现 这是为什么? 另外要指出的是,当我将swift框架导入swift项目时,该相同的程序也可以工作 问

  • 问题内容: 我有一个Objective- C框架(框架A),该框架公开了一些公共和私有标头。公共头文件也在框架的伞头文件中声明。我有第二个Swift框架(框架B),它与Objective- C框架链接。 现在,如果要在BI中导入A的公共标头,只需要做一个即可。 但是,如何导入私有标头呢? 我知道桥接头不是一个选择,因为框架不支持该头。我是否需要以某种方式为专用标头创建一个单独的伞形标头? 问题答案

  • 1.1. 目录 1.1.1. 创建和配置产品 1.1.2. 获取SDK 1.1.3. 产品SN导入 1.1. 目录 本文介绍如何通过“Rokid开放平台”如何创建产品,获取SDK、导入sn。 一、创建和配置产品 登录平台账号 创建产品 配置产品 二、获取SDK 三、设备SN导入和管理 正式与测试SN 导入正式SN 1.1.1. 创建和配置产品 登录平台账号 若没有账号请先注册,再登录 使用Roki

  • 业务网络卡片表现为.card文件,包含一个metadata.JSON文件,一个连接配置文件和可选的证书文件。 Hyperledger Composer Playground中可以使用业务网络卡片来管理不同业务网络和连接配置文件的身份。 创建业务网络卡片 业务网络卡片可以在钱包屏幕中创建,可以从组件文件创建,也可以在业务网络中创建。 请注意:如果卡片从钱包屏幕创建,或者从组件文件创建,则必须在业务网