HueSDKを使ったiOSアプリの動かし方
今日のお題はPhilipsのHueです。↓
これはスマホからアプリを通してon/offや色を制御できるという照明で、
PhilipsからSDKが公開されており、アプリが開発できるようになっています。
最近これをiOSで動かすというタスクが発生し、よくわからないながらもなんとか動かすことができたので、方法をメモしておきます。
( xcode5.1.1 iOS7 )
1. 用意されているサンプルアプリを使う
QuickStartApp_iOS
というものが付いてきます。これをフォルダごと作業スペースにコピーして、同時に
- Lumberjackフォルダ
- HueSDK_iOS.framework
も作業スペースにコピーしましょう。このとき相対位置関係を維持しておくとライブラリのパスの関係が崩れないので楽です。
そうしたら、QuickStartApp_iOSの中のxcodeprojファイルを開きます。
サンプルはもうこれで動くので、拡張したい場合は
PHControlLightsViewController
をいじりましょう。これで簡単にHueのアプリができます。
ほかにも多くのファイルがありますが、ここらへんはHueのブリッジとの通信とかをやっているので詳しく調べる気がない限りいじらない方が良いでしょう。
2. 既存のアプリに組み込む
しかし、いちいちこのサンプルアプリをもとにしなければいけないというのは、開発の自由度が下がります。既存のアプリに組み込みたいということもあるでしょう。
しかし、ブリッジとの通信とかをいちいち理解するのは面倒です。
ということで、よくわからないままにサンプルアプリからとりあえず必要そうなものをコピーして動かすという方法をとります。
ということでまず、QuiciStartApp_iOSから
- SDKWizardフォルダ
- PHAppDelegate.h&.m
を組み込み先のプロジェクトにドラッグ&ドロップでコピーします。(この後のドラッグ&ドロップではすべてファイルを組み込み先にコピーするようにチェックします)
もとのAppDelegateは消去して、main.mのAppDelegateをPHAppDelegateに書き換えます。サンプルアプリはなぜかいまだにxibファイルを使っているのでPHAppDelegate.hの90行目あたりを
のように変更します。
また、PHControlLightsViewControllerとなっているところを自分のViewControllerの名前に直します。
まだエラーが大量に出てるはずなので、ライブラリを追加します。
まず、Build Phase->Link Binary With Librariesに
HueSDK_iOS.framework
を追加します。
そして、Frameworksのところに、Lumberjackフォルダをドラッグ&ドロップでコピーします。これでだいたいエラーが消えて、動くようになるはずです。
ViewContorllerの中身は欲しい機能だけ選んでコピペして、好きなイベントに割り当てるといいと思います。
以上です。これから開発を進めていきます。