61
Windows Azure Mobile Service を用 いたiOS/Android開発 山本 誠樹 (Yamamoto Masaki) @nnasaki

COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

Embed Size (px)

DESCRIPTION

Community Open Day 2013 東北会場(エフスタ!!SENDAI)にて発表した資料です。 http://cod.ms/Pages/place_fukushima.aspx

Citation preview

Page 1: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

Windows Azure Mobile Service を用いたiOS/Android開発山本 誠樹(Yamamoto Masaki)@nnasaki

Page 2: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

自己紹介•山本 誠樹(Yamamoto Masaki)•@nnasaki•↑まさきって呼びます。•大体このIDでやってます。•http://nnasaki.hatenablog.com/

Page 3: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

自己紹介2•C# が好き•というかLINQが好き•VB.NETばくはつしろ

Page 4: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

本日のターゲット•iOS/Androidデベロッパー•非Windowsの人向け•Visual Studio使いません•Windows 使いません

Page 6: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

Windows依存を減らすMicrosoft

http://www.businessinsider.com/chart-of-the-day-microsoft-windows-income-2013-4

Page 8: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

Windows Azure Mobile Service

とは?

Page 9: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•モバイル端末向けBaaS(Backend As A Service)

•2012/8/28 開始

Page 11: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

SDK

SQL

OAuth

http://msdn.microsoft.com/en-us/library/windowsazure/jj554228.aspx

Page 12: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•クライアントSDKがマルチプラットフォーム対応!

•サーバー側でロジックを使い分ける必要が無い

Page 13: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•iOSとAndroidのどのバージョンに対応しているの?

•古いバージョンに対応していないと困る(特にAndroid2.3)

Page 14: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•iOS5以降に対応•iOS5より前は3.7%なので問題ないレベル

iOS

Page 16: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•Android2.2以降に対応•2.2より前は1.8%なので問題ないレベル

Android

Page 18: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

Android

•クイックスタートアプリは4.2以上対応なんで注意

Page 19: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

なぜWindows Azure Mobile Servicesを使う

べきか?

Page 20: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•無料•スキーマレス•認証•プッシュ通知

Page 21: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•無料•スキーマレス•認証•プッシュ通知

Page 24: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

これから使う人は多分3ヶ月間

無料

Page 25: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•3ヶ月経ったら?•無料期間終わったら?•転送量オーバーしたら?•悪意のある攻撃を受けたら?

Page 26: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

え?お金とられるの?やだ怖い

Page 27: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

実話•AWSの無料期間にDBサーバーを立ち上げていた•不幸なことに落とすのを忘れていた•無料期間終了と同時に数万円の請求が…

Page 28: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

Azureはご安心

ください!!!

Page 29: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発
Page 30: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

閑話休題

Page 31: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•無料•スキーマレス•認証•プッシュ通知

Page 32: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•デフォルトでオン

Page 33: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•4つの型が使用可能

[Windows Azure Mobile Services を使った Android/iOS アプリケーションの構築](http://www.slideshare.net/shosuz/windows-azure-mobile-services-android-i-os-17238153)

Page 34: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•NoSQLではない•SQLが使用可能!

Page 35: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

デモ

Page 36: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•無料•スキーマレス•認証•プッシュ通知

Page 37: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発
Page 38: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•それぞれの違いはこれだけ[client loginWithProvider:@"microsoft" ...][client loginWithProvider:@"facebook" ...][client loginWithProvider:@"twitter" ...][client loginWithProvider:@"google" ...]

Page 39: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

デモ

Page 40: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

•無料•スキーマレス•認証•プッシュ通知

Page 41: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

プッシュ通知とは?

Page 43: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

プッシュはとにかく面倒くさい

Page 45: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

細かいことはどうでもいいから表示したい!

Page 46: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

サーバーはこれだけpush.apns.send(item.deviceToken, { alert: "Toast: " + item.text, payload: { inAppMessage: "Hey, a new item arrived: '" + item.text + "'" } });

iOS

push.gcm.send(item.channel, item.text, { success: function(response) { console.log('Push notification sent: ', response); }, error: function(error) { console.log('Error sending push notification: ', error); } });

Android

Page 47: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

デモ

Page 48: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

ご紹介しきれなかったこと

Page 49: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

Windows•ストアアプリやWindows PhoneについてはCodeZineの記事を見ていただくと良いと思います!

http://codezine.jp/article/detail/6890

Page 50: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

スケジューラ•サーバースクリプトを定期実行(cron)できる•無料の場合15分に1回まで等の制限がある

http://www.windowsazure.com/ja-jp/pricing/details/mobile-services/

Page 52: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

スケール•占有インスタンスに変更可能だが、現在はS(1コア)のみ•将来的にはWebサイト同等のL(4コア)やインスタンス数を増やせるようになると思われる

Page 53: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

ログ•サーバー側でConsole.log(“string”);で出力可能•ポータルにて確認可能•Webサイトの場合 tail -f が出来るので同等になって欲しい

Page 54: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

コマンドラインツール

•ポータル以外からコマンドで操作できる•Macの場合のインストール方法blogに書きました

http://nnasaki.hatenablog.com/entry/2013/05/02/005951

Page 55: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

デバッグ•サーバースクリプトはPrintデバッグしか無い•ローカルのnode.jsでも実行できないかな~?

Page 56: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

デプロイ•サーバースクリプトはポータルにて直接編集できるがバージョン管理されない•コマンドラインツールとJenkinsを組み合わせれば出来なくも無い•WebサイトではGithubやDropbox連携が出来るので同等になってほしいところ

Page 57: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

テスト自動化•サーバー側はリクエストのイベントドリブンなので難しい•クライアントSDKにモックが無いので自分で何とかする必要がある

Page 59: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

今後もBlogにて最新情報をお届けします。

•nnasaki.hatenablog.com

Page 60: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発

ご静聴ありがとうございました

Page 61: COD2013 Windows Azure Mobile Service を用いたiOS/Android開発