LoginSignup
12

More than 5 years have passed since last update.

cocoapodsのuse_framework!を使いつつobj-c製ライブラリを使うときにハマったこと

Last updated at Posted at 2015-07-17

これまでは、Bridging-Header.h でimportしてたんですが、開発中のアプリがiOS7のサポートを切るということで、喜び勇んでcocoapodsのuse_frameworks!を使いswift製のライブラリをインストールしてみました。

すると、これまで使えていたobj-c製ライブラリをうまくimportできなくなってしまいました。

use_frameworks!を使うとBriding-Headerは使えない

代わりに、swiftのコードからimportします。こっちのほうが普通ですね。

Hoge.swift
import SDWebImage

class Hoge {
}

#import "SDWebImage/UIImageView+WebCache.h"みたいにimportしてた場合は、import SDWebImage.UIImageView_WebCacheとなります。

たまにimportできないライブラリがある

importのところでcould not build objective-c moduleというエラーが出る場合があります。

自分はFMDBをimportしようとして↑のエラーが出ました。ちゃんと原因は理解できてないのですが、ぐぐったら Unable to use FMDB in a Swift framework · Issue #309 · ccgus/fmdb が出てきて、forkして修正されてるものを使ったら解決しました。

他のライブラリ6個使ってますが、それらは大丈夫でした。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12