xcode 中的外部库使用情况

External library usage in xcode

我正在按照本教程将 socket.io 导入 swift。 http://socket.io/blog/socket-io-on-ios/

我已完成教程中的所有操作,但出现此错误:

Use of unresolved identifier 'SocketIOClient'

对于这段代码:

let socket = SocketIOClient(socketURL: "localhost:8900") 

我的结构:

我该如何解决这个问题?

bridging-header.h 中将此 #import "SocketRocket/SRWebSocket.h" 更改为:

#import <SocketRocket/SRWebSocket.h>

如果不起作用,只需添加:

#import "SRWebSocket.h"

同时将桥接 header 重命名为 Ribony-Bridging-Header.h 并将其添加到项目的目标设置(请参阅桥接 header 路径,而不仅仅是从文档中复制 "TicTacIOiOS/Bridging-Header.h"网络套接字)。

确保在复制时您确实在复制文件。这是显示我的意思的屏幕截图。

复制文件时不要这样做...

在此图像中,选项 "Copy items if needed is deselected"

但一定要这样做

Select选项"Copy items if needed"

另外请务必在导入到桥接头文件后构建您的项目。确定是不是这样导入的框架

#import <Framework/Framework.h>

但是如果它是一个独立的 .h 文件,那么像这样导入它

#import "MyClass.h" 

更新:我还建议您查看此处以确保您的步骤正确 - How to call Objective-C code from Swift

确保两件事:

  • select "create groups" 不是 "create folder references"
  • 根据需要复制项目