SwiftでFrameworkを作成する

こんにちは、大塚です。

Frameworkについて

少し前になりますが、swiftでライブラリを作成する必要があったので調べてみました。

~Xcode5以前~
Cocoa Touch Static Library

  • Objective-Cのみ
  • ビルド時に静的にリンクされる、いわゆる普通のライブラリ
  • 画像やnibファイルなどのリソースを含めることはできない

~Xcode6以降~
Cocoa Touch Framework

  • Swiftが使える
  • 導入が簡単なり、ビルドスクリプトなどが不要に
  • 画像やstoryboardなどのリソースを含むことができる
  • App Extensionsなど複数プロセスから共有可能
  • ビルドが速くなる
  • 実体はディレクトリらしい

Frameworkの作成手順

 1.「File」->「New」->「Target」->「Cocoa Touch Framework」を選択
Frameworkが追加される

 2. ソースファイルを追加し、TargetがFrameworkになっていることを確認

 3. 公開するクラス/メソッドにはpublicを付ける

Frameworkを使用する

 1. 「Project設定」->「General」->「Linked Frameworks and Libraries」から作成したFrameworkを追加

 2. 使用したいソースにimport文を記述し、FrameworkのAPIを使用する

最後に

・iOS8以前をサポートするならStatic Library
・iOS8以降のみのサポートでよければEmbedded Framework
がオススメっぽいです!

comments powered by Disqus