Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

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

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. ご静聴ありがとうございました

×