【mBaaS】 初期設定 ~carthageを使ってインストール~


carthage(カルタゴ)って読むみたいです。
カーセージ派もいるみたいですが、自分の知り合いはみんなカルタゴ派でした><

最近では、結構色々なライブラリにも導入されていて、mBaaSの方でも使用できるようになりました!
carthageを利用する事の利点として、プロジェクトのビルドがとても速くなることや、余計なファイルを作られないなので、とてもシンプルな仕組みで利用できるといった事があるみたいです。

Carthageの導入

実装の前提条件は、
・Carthageを使ってNCMB.Frameworkを実装する
・NCMB.Frameworkを実装するプロジェクト名はMyProject
として説明いたします。

Carthageのインストール

https://github.com/Carthage/Carthage/releases
からCarthage.pkgをダウンロードしてインストールしてください。
(Homebrewを使ってインストールする方法もあります)

NCMB.Frameworkを実装するプロジェクトを作成する

Xcode
 New→Project
  →Product Name : MyProject
 でプロジェクトを作成しましょう。

プロジェクトのディレクトリへcdコマンドを使って移動

cd myProjects/application/MyProject

touchコマンドでCartfileを作成

touch Cartfile

プロジェクト内のフォルダにCartfileが作成されます。

Cartfileを編集

vim Cartfile

でCartfileを編集します。
(テキストエディットでも特に問題ありません)

Cartfileに記述する内容

mBaaSのFrameworkをを利用する場合は以下のように記述します。

github "NIFTYCloud-mbaas/ncmb_ios"

ブランチから利用する場合は以下のように記述します。

github "NIFTYCloud-mbaas/ncmb_ios" "ブランチ名"

外部ライブラリをcarthageコマンドを使ってビルド

コマンドで、

carthage update --platform iOS

を実行する事で、MyProject/Carthage/Build/iOS に NCMB.framework が作成されます。

プロジェクトにNCMB.Frameworkを追加

続いて、xcodeからNCMB.Frameworkを追加して使用できるようにします。
xcodeで作成したMyProject.xcodeprojからプロジェクトを開きます。

・Linked Frameworks and LibraryにNCMB.Frameworkを追加

Generalタブから、Linked Frameworks and Library にある ボタンを押して、

Add Other... を押して、

MyProject/Carthage/Build/iOS にある NCMB.frameworkを選択します。

Linked Frameworks and LibraryNCMB.Frameworkが表示されます。

・Build Phasesの設定

NCMB.Frameworkが表示されたら、Build Phases タブに移動し ボタンを押して、
New Run Script Phase を選択します。

shell /bin/sh と書かれている下のところに以下内容を記述します。

/usr/local/bin/carthage copy-frameworks

その下にある input Files ボタンを押して、NCMB.frameworkのパスを記述します。

$(SRCROOT)/Carthage/Build/iOS/NCMB.framework 

無事にプロジェクトのビルドが通れば実装完了となります!
是非是非、carthageでNCMB.Frameworkをご利用ください!!

carthageの作成(配布)

1.
Manage schemes...から、Sharedにチェックを入れます。

2.
$ carthage build --no-skip-current

をターミナルで実行します。

プロジェクト内に、Carthageフォルダが作成されて、NCMB.frameworkが作成されていれば成功です!