objective-c - 将 Objective-c 框架导入 Swift 框架项目

标签 objective-c swift ibeacon beacon

我正在构建一个框架,我需要在其中导入一些 objective-c 框架,现在我需要导入“Beaconstac.framework”,但由于我们无法在 swift 框架项目中添加桥接 header ,所以我的问题是如何才能我在我的项目中使用了这个框架,这在我试过的项目中不能直接访问

import Beaconstac

但它给出错误“没有这样的模块”

有没有其他方法可以做到这一点?

最佳答案

在 swift 框架项目中包含现有 Obj C 框架的步骤

假设我们正在 swift 中创建一个“SwiftProj.framework”项目,该项目内部必须使用 Objective C“ObjC.framework”

  1. 将 ObjC.framework 放在 Frameworks 文件夹中,通过 Linked Frameworks and Libraries 链接到 Swift 框架项目,并在同级创建一个 module.modulemap 文件。
  2. 在module.modulemap中
module ObjC{
    header "ObjC.framework/Headers/ClassA.h"
    export *
}
  1. 创建xcconfig文件(文件->新建->iOS->其他->配置设置文件)

  2. 在xcconfig文件中

SWIFT_INCLUDE_PATHS = $(SRCROOT)/
MODULEMAP_PRIVATE_FILE = $(SRCROOT)/module.modulemap

现在您可以在 SwiftProj.framework 中访问 ObjC.ClassA

关于objective-c - 将 Objective-c 框架导入 Swift 框架项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33797212/

相关文章:

ios - 在 ImageView IOS 上添加线条( objective-c )

iphone - 平移手势导致 subview 崩溃?

ios - 从 navigationItem 中删除项目以编程方式显示 navigationItems 标题

ios - 无法获取 NSLayoutConstraint 的约束

ios - 当应用程序在后台时从信标接收信号

ios - 如何在没有信标标识符的情况下找到 iBeacon?

flutter - Flutter 中的 Beacon 功能

iphone - viewController出现时出现黑色

ios - 检测滑动删除按钮和在编辑模式下制作的删除按钮之间的区别?

json - Swift 到 Swift 3 代码转换 : Reading JSON files