LoginSignup
11
11

More than 5 years have passed since last update.

Couchbase Lite for iOS のインストールメモ(雑な説明だけど64bit対応も補足)

Last updated at Posted at 2014-05-12

はじめに

iOS のローカルストレージをどれにしようか悩んでいたところ Couchbase Lite を見つけた。
RESTFul + JSON でサーバーとのやりとりがメインなので、相性が良さそうなので調べてみる事に。
色々と Couchbase Lite のほうが柔軟そうな気がしてきた。
MongoDB を使い始めた時ぐらいに、どっち使おうか悩んだ事を思い出した。
コミュニティーもしっかりしていて、信頼はそこそこできる。
MongoDB も使い慣れているので、Couchbase Lite で攻める事にしようかなと思った。
64bit 対応が多少面倒だけど、丁寧に wiki を追えば分かる。
ここで、Road Map が確認できる。
Developing Apps を一通り読めばだいたいやれることは分かる。
大分高機能で、ちゃんと使えれば良い感じかも。
基本的な機能は整っている感じ。
CouchbaseLiteListener 使って、peer-to-peer ぽいことも出来るし、遊べる感じ。

ダウンロード & インストール

// git clone して、submodule update して、以下のコマンドでコンパイル
// build/Release-ios-universal/CouchbaseLite.framework ができるのでそれを利用
$ xcodebuild -target "CBL iOS" -configuration 'Release 64bit' 
  • ファイルを解凍して、XCode のプロジェクトナビゲーターの Frameworks フォルダーにドラック&ドロップする
    Screen Shot 2014-05-10 at 4.22.18 PM.png


  • インストール先のターゲットを正しく選択して保存する
    Screen Shot 2014-05-10 at 4.21.09 PM.png


  • プロジェクトの Build Settings を選択し、 Other Linker Flags-ObjC を追加
    Screen Shot 2014-05-10 at 4.27.00 PM.png


  • Linked Framework & Libraries に以下を追加

    • CFNetwork.framework
    • Security.framework
    • SystemConfiguration.framework
    • libsqlite3.dylib
    • libz.dylib Screen Shot 2014-05-10 at 4.29.11 PM.png * * *
  • ビルドをしてみて、エラーがないか確認してエラーがなければOK

実装してみる

  • ProjectNameAppDelegateヘッダーファイルに以下を追加
ProjectNameAppDelegate.h
#import <CouchbaseLite/CouchbaseLite.h>
...
  • property を設定する
ProjectNameAppDelegate.h
 @property (strong, nonatomic) CBLDatabase *database;
  • application:didFinishLaunchingWithOptions: メソッドに以下を追加する
ProjectNameAppDelegate.m
// CBLManger の shared instance を作成
CBLManager *manager = [CBLManager sharedInstance];

// データーベースの作成
// データーベースの名前に使える文字は、小文字[a-z], 数値[0-9], 特殊文字[$_()+-/]
NSError *error;
// self.database = [manager createDatabaseNamed: @"database_name" error: &error];
// beta-3 で createDabaseNamed -> databaseNamed に変わった
self.database = [manager databaseNamed: @"database_name" error: &error];

バックグラウンドで CBLManager を使いたいとき

参照

11
11
0

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
11
11