Posted by 佐藤一憲 Solutions Architect, Cloud Solutions Team

[この記事は Mobile Backend Starter のプロダクト マネージャー、Stuart Reavley が Cloud Platform Blog に投稿した記事、Speed up iOS development with Google Cloud Platform を元に、佐藤が加筆・再構成しています]

サーバー側のコーディングをせずとも Google Cloud Platform の豊富なバックエンド機能にモバイル アプリから簡単にアクセスできる Mobile Backend Starter。既存の Android 版に加えて、新たに iOS がサポートされました。この iOS 対応 Mobile Backend Starter については、11/7 に開催される iOS Enterprise & Developers Conference 2013Google 佐藤が担当するセッションにおいても詳しく紹介される予定です。



Mobile Backend Starter は、サーバー側のコーディングの不要な Backend as a Service(BaaS)スタイルのバックエンドを Google App Engine 上に簡単にアップロードできる開発環境です。モバイル アプリケーション側のクライアント ライブラリを通じて、以下のバックエンド機能を利用できます。

  • クラウド上でのデータの保存とユーザー間の共有
  • モバイル端末への push 通信
  • データの更新をモバイル端末に即座に伝える continuous query
  • モバイル端末同士の pub/sub メッセージング
  • Google アカウントによるユーザー認証とアクセス コントロール


Mobile Backend Starter は App Engine のアプリケーションとしてアップロードされるため、ある程度の規模までは無償で運用できるほか、 App Engine の特長であるきわめて高いスケーラビリティと優れた信頼性を備えます。またクライアント側とバックエンド側両方のソースコードがオープンソースとして公開されていますので、バックエンドの機能拡張も容易です。いわば、BaaS と Platform as a Service(PaaS)を「いいとこ取り」した環境と言えます。

Android デベロッパーの Ryan Harter は Mobile Backend Starter を用いて Android 向けアプリ Hashnote を開発し、またたく間に 20,000 ユーザーを獲得することに成功しました。

「Mobile Backend Starter のおかげで Android 向けアプリの開発にフォーカスしながらもバックエンドの豊富な機能を簡単に活用できました。一番のポイントは、バックエンド側のソースが公開されておりブラックボックスではないことです。そのため、Hashnote 固有のロジックをすぐに追加できたほか、バックエンド内部のコードの書き方を学ぶこともできました。」(Ryan Harter)


iOSのサポート

今回、この Mobile Backend Starter に新たに iOS のサポートが追加されました。iOS 向けアプリにインストールしたライブラリを用いて、上述のバックエンド機能を直接呼び出せます。App Engine から iOS デバイスに対して Apple Push Notificcation Service (APNS) によるスケーラビリティと可用性の高いプッシュ通信を行うためのバックエンド設計が新たに導入されています。すでに Android 向けにサポートされていた Google Cloud Messaging によるプッシュ通信とも統合されており、iOS 向けアプリと Android 向けアプリの間で 1:1 や 1:N のメッセージングをとても簡単に実装できます。

使ってみよう

お手元に iPhone または iPad、および Xcode 開発環境があれば、以下のごく簡単な手順で Mobile Backend Starter を試せます(より詳しい手順はこちらをご覧ください)。

  1. App Engine 上にバックエンドをアップロードする
  2. iOS クライアントの zip ファイルをダウンロードする(GitHub リポジトリからソースコードのダウンロードも可能です)
  3. Xcode にインポートし、サンプルを実機上で動作させる(シミュレーターでは動作しません)

また、Android 向けサンプルもついてもこちらの手順で試せます。

今回の iOS のサポートによって、iOS と Android の両方をサポートするサービスを、サーバー側のコードを一切書かずとも簡単に構築できるようになりました。モバイル開発の経験はあるけどサーバー側の開発は苦手......という方は、ぜひ試してみてください。なお、Mobile Backend Starter については今年の Google I/O 2013 のセッション From Nothing to Nirvana in minutes: Cloud Backend for Your Android App でも詳しく紹介されていますので、スライドおよびビデオを合わせてご覧ください。