1

我正在用 Swift 尝试 philips 色调。我想使用 HTTP 请求打开灯。我正在使用 Net 进行 HTTPRequest https://github.com/nghialv/Net

let net = Net()
let params = ["on":true]

let puturl = "http://[IP Address]/api/[username]/lights/1/state"
net.PUT(absoluteUrl: puturl, params: params, successHandler: { (responseData) -> () in
    println("success")
    }) { (err) -> () in
        println("err")
}

Xcode 打印“成功”但灯无法打开。请让我知道原因。

4

2 回答 2

1

您需要先通过网桥进行身份验证(“推送链接”)。您可能没有这样做,这就是灯不响应的原因。

另外我建议你先从官方的Philips Hue SDK开始。它显然有它的问题,但它从根本上是有效的,并且在您自己重新实现所有请求之前是一个良好的开端(如果您想使用所有 Hue 功能,这是相当多的)。

由于 Swift 和 Objective-C 是桥梁,因此 Hue SDK 是用 Objective-C 编写的这一事实不是问题。您只需要使用该行创建一个桥接头(AppName-Bridging-Header.h)

#import <HueSDK_iOS/HueSDK.h>

然后你可以从你的 Swift 文件中使用 Hue SDK。

Apple 有一本关于如何从 Swift 文件中使用 Objective-C 代码的好书

于 2015-05-16T21:24:54.400 回答
0

Hue SDK 附带了一个演示项目。你试过吗?它不是用 Swift(而是 Obj-C)编写的,但这应该不会有太大的不同。这对我来说可以。

另外,您是否使用网桥对您的应用程序进行了身份验证?

于 2014-12-20T09:43:52.967 回答