Edited at

Realm Mobile Platform を試してみた(Linuxサーバ編)

More than 3 years have passed since last update.

先日リリースされたRealm Mobile PlatformをiOS(swift)とLinuxサーバ(centOS6.5)で試してみた。


Linuxサーバ側 手順


1.リポジトリの設定

curl -s https://packagecloud.io/install/repositories/realm/realm/script.rpm.sh | sudo bash


2.Realm Object Server のインストール

sudo yum -y install realm-object-server-de


3.サービス起動

sudo chkconfig realm-object-server on

sudo service realm-object-server start


4.admin token の取得

※後でRealm Browserでサーバに接続するのに必要

cat /etc/realm/admin_token.base64


mac側 手順


1.ブラウザを起動し、サーバ管理画面にアクセス

初回起動時にはメールアドレスとパスワードを入力して登録してください。

接続URL:http://{サーバIP}:9080/


2.デモアプリのソースコード入手

git clone https://github.com/realm/RealmTasks.git


3.ビルド準備

cd RealmTasks/RealmTasks\ Apple/

pod repo update #念のためpodのリポジトリ更新
pod install


4.Xcode8でRealmTasks.xcworkspaceを起動


5.ソースコード修正

RealmTasks Shared配下のConstants.swiftのサーバー向け先を修正


Constants.swift

    #if os(OSX)

static let syncHost = "127.0.0.1"
#else
// static let syncHost = localIPAddress
static let syncHost = "XXX.XXX.XXX.XXX" // 任意のサーバ
#endif


6.アプリビルド及び実行

アプリではタップもしくは下にスワイプすることでタスクを追加できます。


7.Realm Browserでサーバ側データベースにアクセス

Realm Browser

Realm Browserを起動し下記手順でアプリで追加したタスクがサーバ側に同期されていることが確認できます。また、Realm Browserでタスクの完了チェック等を実行するとアプリ側でもタスクがチェックされ即時に同期されることが確認できます。

realm001.gif

realm002.gif

realm003.gif


所感

サーバ側の設定もかなり簡単だったので、使いどころによってはかなり有用だと思う。

個人的にはサーバ側のrealmデータベースをコマンドラインやphp,ruby等のライブラリで簡単に更新できる仕組みが欲しい。(ドキュメントを読み込んでないので、もしかしたらできるのかもしれないが・・)


参考

Realm Mobile Platformを最速で試してみた(チュートリアル)

geelive blog (Realm Mobile Platform を試してみた)