使用Swift运行Philips Hue框架SDK

时间:2014-06-07 17:36:39

标签: xcode swift sdk philips-hue

我正在尝试使用Object-C-bridging-header运行HueSDK_OSX Framework。

这是框架:

  

https://github.com/PhilipsHue/PhilipsHueSDK-iOS-OSX/blob/master/Documentation/APIReference_OSX.zip

桥接报头:

#import <HueSDK_OSX/HueSDK.h>

Swift文件:

import PHHueSDK

当输入“import HueSDK_OSX /”时,会出现一个众所周知的代码完成列表,其中包含框架中的所有类,但是当选择它们时,XCode会继续说

  

构建错误:“没有这样的模块”

然后,当省略import-directive并调用

let hue = PHHueSDK()
hue.startUpSDK()

然后没有发生构建错误,而是发生链接器错误

  

架构x86_64的未定义符号:       “_OBJC_CLASS _ $ _ PHHueSDK”,引自:         AppDelegate.o中的__TFC8testapp211AppDelegate12awakeFromNibfS0_FT_T_        ld:找不到架构x86_64的符号        clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

3 个答案:

答案 0 :(得分:3)

除了将HueSDK_OSX.framework添加到您显然所做的项目之外,您还必须将Lumberjack文件夹添加到项目中(使用复制选项)。您也可以在飞利浦提供的zip文件中找到此文件夹。

您需要将SystemConfiguration.framework添加到项目中,以便从HueSDK框架调用SCDynamicStoreCopyComputerName函数。这对我有帮助。

答案 1 :(得分:1)

尝试寻找HomeKit解决方案怎么样?这似乎支持飞利浦色调照明

https://developer.apple.com/library/prerelease/ios/documentation/HomeKit/Reference/HomeKit_Framework/index.html

否则您可以尝试使用RESTful API来控制灯泡。 http://developers.meethue.com/1_lightsapi.html

答案 2 :(得分:0)

您所做的桥接标题处理它 - 您不需要将任何内容导入到Swift类中以使用SDK。只需从swift文件中删除导入即可(假设标题正确)。