Successfully reported this slideshow.

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

1,993 views

Published on

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

Published in: Technology

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

  1. 1. Windows AzureMobile Service を用いたiOS/Android開発山本 誠樹(Yamamoto Masaki)@nnasaki
  2. 2. 自己紹介•山本 誠樹(YamamotoMasaki)•@nnasaki•↑まさきって呼びます。•大体このIDでやってます。•http://nnasaki.hatenablog.com/
  3. 3. 自己紹介2•C# が好き•というかLINQが好き•VB.NETばくはつしろ
  4. 4. 本日のターゲット•iOS/Androidデベロッパー•非Windowsの人向け•Visual Studio使いません•Windows 使いません
  5. 5. •Todoアプリを作りますhttp://www.windowsazure.com/en-us/develop/mobile/tutorials/get-started-ios/?fb=ja-jp
  6. 6. Windows依存を減らすMicrosofthttp://www.businessinsider.com/chart-of-the-day-microsoft-windows-income-2013-4
  7. 7. Azureの拡大•年間売上高が10億ドルを突破• http://japan.zdnet.com/business-application/analysis/35031481/•AWS は18億ドルぐらい• http://jp.reuters.com/article/topNews/idJPTYE93G03K20130417
  8. 8. Windows AzureMobile Serviceとは?
  9. 9. •モバイル端末向けBaaS(Backend As AService)•2012/8/28 開始
  10. 10. http://msdn.microsoft.com/en-us/library/windowsazure/jj554228.aspx
  11. 11. SDKSQLOAuthhttp://msdn.microsoft.com/en-us/library/windowsazure/jj554228.aspx
  12. 12. •クライアントSDKがマルチプラットフォーム対応!•サーバー側でロジックを使い分ける必要が無い
  13. 13. •iOSとAndroidのどのバージョンに対応しているの?•古いバージョンに対応していないと困る(特にAndroid2.3)
  14. 14. •iOS5以降に対応•iOS5より前は3.7%なので問題ないレベルiOS
  15. 15. http://chitika.com/ios-version-distribution-update
  16. 16. •Android2.2以降に対応•2.2より前は1.8%なので問題ないレベルAndroid
  17. 17. http://developer.android.com/about/dashboards/index.html
  18. 18. Android•クイックスタートアプリは4.2以上対応なんで注意
  19. 19. なぜWindowsAzure MobileServicesを使うべきか?
  20. 20. •無料•スキーマレス•認証•プッシュ通知
  21. 21. •無料•スキーマレス•認証•プッシュ通知
  22. 22. http://www.slideshare.net/shosuz/windows-azure-mobile-services-android-i-os-17238153
  23. 23. •SQL データベースは有料•但し無料評価中は1GBまで無料http://www.windowsazure.com/ja-jp/pricing/details/sql-database/
  24. 24. これから使う人は多分3ヶ月間無料
  25. 25. •3ヶ月経ったら?•無料期間終わったら?•転送量オーバーしたら?•悪意のある攻撃を受けたら?
  26. 26. え?お金とられるの?やだ怖い
  27. 27. 実話•AWSの無料期間にDBサーバーを立ち上げていた•不幸なことに落とすのを忘れていた•無料期間終了と同時に数万円の請求が…
  28. 28. Azureはご安心ください!!!
  29. 29. 閑話休題
  30. 30. •無料•スキーマレス•認証•プッシュ通知
  31. 31. •デフォルトでオン
  32. 32. •4つの型が使用可能[Windows Azure Mobile Services を使ったAndroid/iOS アプリケーションの構築](http://www.slideshare.net/shosuz/windows-azure-mobile-services-android-i-os-17238153)
  33. 33. •NoSQLではない•SQLが使用可能!
  34. 34. デモ
  35. 35. •無料•スキーマレス•認証•プッシュ通知
  36. 36. •それぞれの違いはこれだけ[client loginWithProvider:@"microsoft" ...][client loginWithProvider:@"facebook" ...][client loginWithProvider:@"twitter" ...][client loginWithProvider:@"google" ...]
  37. 37. デモ
  38. 38. •無料•スキーマレス•認証•プッシュ通知
  39. 39. プッシュ通知とは?
  40. 40. http://www.windowsazure.com/en-us/develop/mobile/tutorials/get-started-with-push-ios/?fb=ja-jp
  41. 41. プッシュはとにかく面倒くさい
  42. 42. https://developer.apple.com/jp/devcenter/ios/library/documentation/RemoteNotificationsPG.pdf
  43. 43. 細かいことはどうでもいいから表示したい!
  44. 44. サーバーはこれだけpush.apns.send(item.deviceToken, {alert: "Toast: " + item.text,payload: {inAppMessage: "Hey, a new item arrived: " + item.text + ""}});iOSpush.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
  45. 45. デモ
  46. 46. ご紹介しきれなかったこと
  47. 47. Windows•ストアアプリやWindows PhoneについてはCodeZineの記事を見ていただくと良いと思います!http://codezine.jp/article/detail/6890
  48. 48. スケジューラ•サーバースクリプトを定期実行(cron)できる•無料の場合15分に1回まで等の制限があるhttp://www.windowsazure.com/ja-jp/pricing/details/mobile-services/
  49. 49. 監視監視•利用状況をモニタリングすることが可能•無料では利用できないhttp://www.windowsazure.com/en-us/manage/services/web-sites/how-to-monitor-websites/?fb=ja-jp#webendpointstatus
  50. 50. スケール•占有インスタンスに変更可能だが、現在はS(1コア)のみ•将来的にはWebサイト同等のL(4コア)やインスタンス数を増やせるようになると思われる
  51. 51. ログ•サーバー側でConsole.log( string );で出力可能•ポータルにて確認可能•Webサイトの場合 tail -f が出来るので同等になって欲しい
  52. 52. コマンドラインツール•ポータル以外からコマンドで操作できる•Macの場合のインストール方法blogに書きましたhttp://nnasaki.hatenablog.com/entry/2013/05/02/005951
  53. 53. デバッグ•サーバースクリプトはPrintデバッグしか無い•ローカルのnode.jsでも実行できないかな∼?
  54. 54. デプロイ•サーバースクリプトはポータルにて直接編集できるがバージョン管理されない•コマンドラインツールとJenkinsを組み合わせれば出来なくも無い•WebサイトではGithubやDropbox連携が出来るので同等になってほしいところ
  55. 55. テスト自動化•サーバー側はリクエストのイベントドリブンなので難しい•クライアントSDKにモックが無いので自分で何とかする必要がある
  56. 56. サーバースクリプト•node.jsだが使えるモジュールは制限されている•使用できるモジュールは以下参照http://www.windowsazure.com/en-us/develop/mobile/how-to-guides/work-with-server-scripts/#modules-helper-functions
  57. 57. 今後もBlogにて最新情報をお届けします。•nnasaki.hatenablog.com
  58. 58. ご静聴ありがとうございました

×