しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

Parse.comを触ってみた

プッシュ通知やオンラインストレージを簡単に実装できるというParse.comを試してみました。

サーバーにデータを保存してみる

まずはサイトの右上の会員登録ボタンから会員登録します。
アプリ名は適当なものにしました。

www.parse.com

最初は以下のような画面が表示されるのでDataを選択します。

f:id:llcc:20160103215239p:plain

次はMobileを選択します。

f:id:llcc:20160103215247p:plain

その次はiOSを選択。

f:id:llcc:20160103215250p:plain

言語はSwiftを選びます。

f:id:llcc:20160103215252p:plain

既存プロジェクトに追加したかったのでExistiong Projectを選択。

f:id:llcc:20160103215255p:plain

インストール方法とシンプルなチュートリアル画面が表示されました。
SDKとライブラリをインストールするように言われるのでその通りに設定します。

今回は使わなかったのですがCocoaPodsでのインストールもできるみたいです。

f:id:llcc:20160103215251p:plain

チュートリアルに従ってAppDelegateを以下のように書き換えます。
APP_IDとCLIENT_KEYは自分のものを使います。

import UIKit
import Parse
import Bolts

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        
        Parse.enableLocalDatastore()
        
        // Initialize Parse.
        Parse.setApplicationId("APP_ID",
            clientKey: "CLIENT_KEY")
        
        // [Optional] Track statistics around application opens.
        PFAnalytics.trackAppOpenedWithLaunchOptions(launchOptions)
        
        return true
    }
}

適当なViewControllerを以下のように書き換えてアプリを起動します。

import UIKit
import Parse

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        let testObject = PFObject(className: "TestObject")
        testObject["foo"] = "bar"
        testObject.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in
            print("Object has been saved.")
        }
    }
}

Parseのデータのページを見ると以下のようにデータが保存されました。
簡単なアプリケーションならサーバー側の実装をせずに作れてしまいそうですね。

f:id:llcc:20160103220134p:plain

料金

料金は基本無料で使えます。
制限としては以下のものがあります。

  • 1秒に30リクエストまで
  • ファイルストレージは20GBまで
  • データベースストレージは20GBまで
  • ファイル転送量は2TBまで
  • プッシュ通知は100万端末まで(?)

f:id:llcc:20160103220514p:plain

「ファイル転送量は累計なのか単月なのか」とか「ストレージは全アプリ共通で20GB」なのかなど細かくは分からなかったので使いながら調べてみようと思います。
しかしかなり太っ腹な料金体系で、簡単なサービスなら十分過ぎるくらいの制限な気がします。

詳細は下のサイトにも載っているので興味がありましたら読んでみて下さい。

Parse | Pricing

まとめ

まだ少し触っただけですが安いし楽だし必要な機能揃っていて素晴らしいサービスだと思いました。
今後は更に詳細な機能を調べてみようと思います。