iOS
TreasureData
Swift

SwiftでTreasureDataを使おうと思ったらうまくいかなかった->なんとかしたつ

More than 3 years have passed since last update.


どんな物語ですか?

SwiftでTreasureDataを使おうと思って、SDKを入れたんだけどうまくいかなかった。それをなんとか解消した物語です。

入れようと思ったライブラリは、

です。Cocoapodsでやろうと思いました。


  • Xcode 6.4

  • Swift 1.2

  • TreasureData iOS SDK 0.1.6.1


どううまくいかなかったんですか?

Cocoapodsでライブラリを入れてBridging-Headerにimport文を書いたところで、めんどうそうなエラーが出ました。具体的に言うと、

#import <KeenClientTD/KeenClient.h>

#import <TreasureData_iOS_SDK/TreasureData.h>

と書いたら、

Screen_Shot_2015-11-04_at_20_53_43.png

となりました。ただ、このエラー見たことある。名前空間的に、TreasureData-iOS-SDKが依存しているKeenClientを読み込めていないんだと思います。

そこで、Forkしてimport文を書き換えました。

Screen Shot 2015-11-04 at 21.09.30.png

これで、Bridging-Headerは読み込めました。


次にどんなエラーが出たんですか?

import TreasureData

って書いたんですよ。そしたら、下記のようなエラーが出ました。

Screen Shot 2015-11-04 at 21.01.26.png

モジュールはこれではないですねということで、書き変えました。

import TreasureData_iOS_SDK

Done!

使えるようになりました。修正した部分についてはプルリクにしています。

使っている人すくなそうだし、誰かの役に立つかな。。あと、何か根本的な間違いをしていて勝手にはまっていたら恥ずかしのですが公開します。


追記

プルリクがマージされましたー。


参考