Objective-C框架类在Swift AppDelegate之外是不可见的

时间:2014-11-26 09:28:16

标签: swift oovoo

我试图将oovoosdk集成到一个新的Swift项目中。 oovoosdk是一个用Objective-C编写的框架。我已经创建了一个桥接头,它似乎正在工作,因为我可以在AppDelegate中调用它并返回结果(ooVooController是构成框架一部分的接口):

let result = ooVooController.sharedController().initSdk(kDefaultAppId, applicationToken: kDefaultAppToken, baseUrl: "https://api-sdk.dev.oovoo.com")

问题在于,当我在AppDelegate之外复制相同的代码时,项目不会编译。我收到警告'使用未解析的标识符ooVooController'。我的理解是,使用桥接头导入的类是全局可用的,但似乎存在某种可见性问题?

为了记录,我不想两次尝试initSdk,这只是一个例子。

编辑:以下代码遇到同样的问题'使用未解析的标识符ooVooVideoView':

let myCompletelyUniqueViewName = ooVooVideoView(frame: self.view.frame)

代码完成工作正常。我尝试明确添加类类型:

let myCompletelyUniqueViewName:ooVooVideoView = ooVooVideoView(frame: self.view.frame)

并且使用了未声明类型的ooVooVideoView'。

2 个答案:

答案 0 :(得分:1)

我最终设法解决了这个问题。受影响的视图控制器具有目标成员资格(在“文件检查器”下找到)到我的测试套件,该测试套件没有配置桥接头。删除此成员资格后,我的项目已编译并运行。

答案 1 :(得分:0)

ooVooController看起来像您之前定义的变量。在AppDelegate课程中搜索let ooVooController = ...之类的内容。

您得到的错误不是因为类或框架本身不可见,而是编译器不知道变量ooVooController