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.
ゼロから始めるWindows Phone、Kinect連携          2011/09/17 第62回 CLR/H勉強会                         素敵なおひげ
自己紹介   H/N:シバタ(素敵なおひげ)   Twitter: @stknohg   Blog : http://d.hatena.ne.jp/stknohg/   札幌で働くSIerです。    2010年よりCLR/Hスタッフと...
はじめに
ゼロから始めるって?   本セッションのタイトルは    「ゼロから始めるWindows Phone、Kinect連携」    ですが、これはスピーカーである私自身が予備    知識ゼロから始めて今日ここで発表しています。   なので、難し...
今日のお題
Kinectで電話をかけよう!       Kinect Call
わかります…よね?
Kinect Call Kinectで画面のボタンに触れる              Windows Phoneに内容が伝わる!
デモ
いかがでしたか?
Kinect開発の基本
開発環境の構築   SDKのインストール     Microsoft   Research         http://research.microsoft.com/en-          us/um/redmond/projects...
Kinectを接続   KinectはXBOXに付属しているものではなく単体で    購入     XBOXに付属しているKinectはUSBポートが独自の形      状をしている     Xbox カスタマーサポートに問い合わせればU...
Kinect開発の基本   参照設定     Microsoft.Research.Kinect          (GAC)   アプリケーションの初期化と終了    using Microsoft.Research.Kinect.Nu...
ビデオイメージの取得   VideoStreamのオープン//VideoStreamをオープンm_NUI.VideoStream.Open(ImageStreamType.Video,               //ストリームの種類    ...
スケルトントラッキング   SkeletonFrameReadyイベントでデータ更新     ポーリングする場合はSkeletonEngine.GetNextFrame()     トラッキングするデータは2人まで同時認識可能    m_...
ジョイント情報      20ヶ所のジョイント情報を取得可能          SkeltonData. Jointsプロパティ(JointID列挙型のCollecton)                                  ...
Coding4Fun Kinect Toolkit   Coding4Fun TeamによるToolkit     深度データ、SkeltonData計算の拡張メソッド     HoverButtonコントロール     WPF、Win...
Windows Phone 7開発の基本
開発環境の構築   APP HUB     http://create.msdn.com/ja-JP   Windows Phone SDK 7.1 RC     インストーラの指示に従いインストールするだけ
Windows Phone開発の基本   Microsoft Visual Studio 2010 Express for Windows Phone       Windows Phone開発用のVisual Studio       ...
デザイン   Microsoft Expression Blend 4     XAMLのデザインツール     VisualStudioとの連携       Blendでデザイン、VisualStudioでコーディング
デバッグ、デプロイ   Windows Phone Emulator(JA)     加速度計     GPSエミュレータ     スクリーンショット   Windows Phone Developer Registration   ...
開発者登録   実機へのデプロイには開発者登録が必要   ¥9800/年   個人はクレジットカード認証のみ       以前はGeoTrustによる本人認証が必要だった       法人の場合は現在もGeoTrustによる認証が必要...
LauncherとChooser   OSの標準機能(ビルトインアプリケーション)    を呼び出す機能   Microsoft.Phone.Tasks 名前空間   LauncherとChooserの違い       Launcher...
PhoneCallTask   電話をかける     PhoneNumberプロパティ     DisplayNameプロパティ   Showメソッドで電話をかける       必ず確認ダイアログが出現する   サンプルコード   ...
EmailComposeTask   Emailを送信する     Toプロパティ     Subjectプロパティ     Bodyプロパティ   Showメソッドでメールを送信する       実際にはメーラーが起動される  ...
その他のLauncherクラス名                     機能BingmapTask              Bingマップを起動BingmapDicrectionsTask   Bingマップを起動(経路検索)Connect...
その他のChooserクラス名                       機能AddressChooserTask         アドレス帳を取得するCameraCaputureTask         カメラを起動し撮った写真を取得するE...
Push Notification概要
Push Notificationとは   登録したサービスからWindows Phoneへ対する    プッシュ配信による通知機能   通知方法は3種類     Toast Notification     Tile Notifica...
処理シーケンス                   Service Application(Kinect)3. サービスに通知URIを登録                                  4. 通知URIに対して       ...
PushChannelについて   Push Notificationを使用するアプリはMPNSに対し    てチャネルを登録する必要がある   チャネルは1アプリケーション1つのみ登録可能で    デバイス内で重複しない名前を付ける必要が...
PushChannelの登録方法   HttpNotificationChannelクラス       Microsoft.Phone.Notification名前空間   コードサンプル    HttpNotificationChann...
通知URIについて   PushChannelを登録したアプリケーションに対して    専用のURIが発行される   このURIをプッシュ通知を行うサービスに登録する     通常はクラウドサービスなどを想定   このURIは丌定期に更...
通知メッセージの送信方法   通知URIに対してHTTPでPOSTするだけ   メッセージの形式は通知方法によって異なる     詳細は後述   送信結果はレスポンスのヘッダから取得     X-NotificationStatus-...
通知メッセージの送信方法//通知URIに対するHTTPリクエストを発行HttpWebRequest NotificationRequest =(HttpWebRequest)WebRequest.Create("http://sn1.notif...
Toast Notification   画面上部にメッセージ(Toast)を表示する通知   アプリケーションが終了している時に有効     HttpNotificationChannel.BindToShellToast()   ク...
設定可能な項目   Title     太字のタイトル。約40文字表示可能   Sub Title     細字のサブタイトル。約47文字表示可能   Parameter     クリック時に遷移するページを指定     未指定の...
Toast Notificationの注意点   アプリケーションの初回起動時にToast通知を行う    旨の確認メッセージを出す必要がある     他の通知では丌要   Application Certification Requir...
メッセージ形式   Header    X-WindowsPhone-Target        toast    X-NotificationClass          2 – ただちに通知                        ...
Tile Notification   ホーム画面のTileを変更する通知   アプリケーション実行中、終了時に有効     HttpNotificationChannel.BindToShellTile()   クリックするとアプリケ...
設定可能な項目(表面)   Title       Tile左下に表示するタイトル。約15文字表示可能   BackGroundImage       背景画像。JPEGまたはPNGファイルを指定       画像サイズは173*17...
設定可能な項目(裏面)   BackTitle     Tile左下のタイトル約15文字表示可能   BackBackGroundImage     背景画像     画像の仕様はBackgroundImageと同様   BackC...
Tile Notificationで出来ないこと   表裏の切り替えタイミングの設定   アニメーションする画像     People、Gamesの様なTileは作れない
メッセージ形式   Header    X-WindowsPhone-Target        token    X-NotificationClass          1 – ただちに通知                        ...
Tileを元に戻すには?   Clear属性を付けたメッセージを通知    <?xml version="1.0" encoding="utf-8"?>    <wp:Notification xmlns:wp="WPNotification...
Raw Notification   ユーザー定義のデータ(Raw Data)を通知     定義内容は自由   アプリケーション実行中のみ有効   HttpNotificationChannel.HttpNotificationRec...
メッセージ形式   Header    X-WindowsPhone-Target   指定丌要    X-NotificationClass     3 – ただちに通知                            13 – 45...
補足
Winodows Phone 7→ Kinectへの通信   Push NotificationではKinectからWindows Phone 7    への通信のみ     リアルタイムな処理には当然向かない   Windows Pho...
ご静聴ありがとうございました
ゼロからはじめるWindows Phone、Kinect連携
Upcoming SlideShare
Loading in …5
×

ゼロからはじめるWindows Phone、Kinect連携

6,388 views

Published on

第62回CLR/H勉強会で発表した資料です。

Published in: Technology
  • Be the first to comment

ゼロからはじめるWindows Phone、Kinect連携

  1. 1. ゼロから始めるWindows Phone、Kinect連携 2011/09/17 第62回 CLR/H勉強会 素敵なおひげ
  2. 2. 自己紹介 H/N:シバタ(素敵なおひげ) Twitter: @stknohg Blog : http://d.hatena.ne.jp/stknohg/ 札幌で働くSIerです。 2010年よりCLR/Hスタッフとして活動しています。 Windows Phoneを現在進行形で勉強中。 WPArchにも一応登録してます
  3. 3. はじめに
  4. 4. ゼロから始めるって? 本セッションのタイトルは 「ゼロから始めるWindows Phone、Kinect連携」 ですが、これはスピーカーである私自身が予備 知識ゼロから始めて今日ここで発表しています。 なので、難しいことはやりません。 Windows Phone、Kinect開発の敷居の低さを知っても らいつつ基本を学んでもらうのが今日の目的です。 Kinect2割、Windows Phone8割程度の内容です。
  5. 5. 今日のお題
  6. 6. Kinectで電話をかけよう! Kinect Call
  7. 7. わかります…よね?
  8. 8. Kinect Call Kinectで画面のボタンに触れる Windows Phoneに内容が伝わる!
  9. 9. デモ
  10. 10. いかがでしたか?
  11. 11. Kinect開発の基本
  12. 12. 開発環境の構築 SDKのインストール  Microsoft Research  http://research.microsoft.com/en- us/um/redmond/projects/kinectsdk/download.aspx  インストーラーの指示に従ってインストールするだけ
  13. 13. Kinectを接続 KinectはXBOXに付属しているものではなく単体で 購入  XBOXに付属しているKinectはUSBポートが独自の形 状をしている  Xbox カスタマーサポートに問い合わせればUSB電源 ケーブルを追加購入可能 Kinectの電源を入れてからPCのUSBポートに接続 SDK付属のサンプルプログラムで動作確認  一部サンプルは Microsoft Speech Platform - Server Runtimeが必要
  14. 14. Kinect開発の基本 参照設定  Microsoft.Research.Kinect (GAC) アプリケーションの初期化と終了 using Microsoft.Research.Kinect.Nui; private Runtime m_NUI; //ランタイムの初期化 m_NUI = new Runtime(0); //index = 接続されたKinectのインデックス // m_NUI.Initialize(RuntimeOptions.UseDepthAndPlayerIndex | //深度とプレイヤー RuntimeOptions.UseSkeletalTracking | //スケルトントラッキング RuntimeOptions.UseColor); //色情報 //ラインタイムの終了処理 if (m_NUI != null) { m_NUI.Uninitialize(); }
  15. 15. ビデオイメージの取得 VideoStreamのオープン//VideoStreamをオープンm_NUI.VideoStream.Open(ImageStreamType.Video, //ストリームの種類 2, //先読みバッファ数 ImageResolution.Resolution640x480, //解像度 ImageType.Color); //色情報のフォーマット VideoFrameReadyイベントでイメージを更新  ポーリングする場合はVideoStream.GetNextFrame()m_NUI.VideoFrameReady += new EventHandler<ImageFrameReadyEventArgs>(Nui_VideoFrameReady);private void Nui_VideoFrameReady(object sender, ImageFrameReadyEventArgs e){ //PlanarImageで画像データを保持 PlanarImage PI = e.ImageFrame.Image; //ImageオブジェクトにBitmap変換して表示 this.imgVideo.Source = BitmapSource.Create(PI.Width,PI.Height, 96,96,PixelFormats.Bgr32, null,PI.Bits,PI.Width * PI.BytesPerPixel);}
  16. 16. スケルトントラッキング SkeletonFrameReadyイベントでデータ更新  ポーリングする場合はSkeletonEngine.GetNextFrame()  トラッキングするデータは2人まで同時認識可能 m_NUI.SkeletonFrameReady += new EventHandler<SkeletonFrameReadyEventArgs>(Nui_SkeletonFrameReady); private void Nui_SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e) { SkeletonData FirstSkelton = null; //トラッキングデータは複数認識可能 foreach (SkeletonData s in e.SkeletonFrame.Skeletons) { if (s.TrackingState == SkeletonTrackingState.Tracked) { …中略… } } }
  17. 17. ジョイント情報  20ヶ所のジョイント情報を取得可能  SkeltonData. Jointsプロパティ(JointID列挙型のCollecton) JointID 位置 JointID 位置 Head 頭 Spine 胴 ShoulderCenter 首元 HipCenter 腰 HandRight 右手 HandLeft 左手 WristRight 右手首 WristLeft 左手首 ElbowRIght 右肘 ElbowLeft 左肘 ShoulderRight 右肩 ShoulderLeft 左肩 HipRight 右尻 HipLeft 左尻 KneeRIght 右膝 KneeLeft 左膝 AnkleRIght 右足首 AnkleLeft 左足首 FootRIght 右足 FootLeft 左足※図は「 Programming Guide: Getting Started with the Kinect for Windows SDK Beta 」より引用
  18. 18. Coding4Fun Kinect Toolkit Coding4Fun TeamによるToolkit  深度データ、SkeltonData計算の拡張メソッド  HoverButtonコントロール  WPF、Windows Form用 CodePlexで公開中  http://c4fkinect.codeplex.com/  Microsoft Public License (Ms-PL)
  19. 19. Windows Phone 7開発の基本
  20. 20. 開発環境の構築 APP HUB  http://create.msdn.com/ja-JP Windows Phone SDK 7.1 RC  インストーラの指示に従いインストールするだけ
  21. 21. Windows Phone開発の基本 Microsoft Visual Studio 2010 Express for Windows Phone  Windows Phone開発用のVisual Studio  Visual Studio Professional以上がすでにインストールされている 場合は統合インストールとなる  SilverlightまたはXNAベースのアプリケーションを作成
  22. 22. デザイン Microsoft Expression Blend 4  XAMLのデザインツール  VisualStudioとの連携  Blendでデザイン、VisualStudioでコーディング
  23. 23. デバッグ、デプロイ Windows Phone Emulator(JA)  加速度計  GPSエミュレータ  スクリーンショット Windows Phone Developer Registration  デバイスをアンロックし実機デバックを可能にする  開発者登録(後述)が必要
  24. 24. 開発者登録 実機へのデプロイには開発者登録が必要 ¥9800/年 個人はクレジットカード認証のみ  以前はGeoTrustによる本人認証が必要だった  法人の場合は現在もGeoTrustによる認証が必要 APP HUBに詳しい手順あり http://create.msdn.com/ja-jp/home/about/registration_walkthrough
  25. 25. LauncherとChooser OSの標準機能(ビルトインアプリケーション) を呼び出す機能 Microsoft.Phone.Tasks 名前空間 LauncherとChooserの違い  Launcher  プリケーションを呼び出して終了  Chooser  アプリケーションを呼び出してアプリケーションの終了/キャンセル イベントを取得できる 注意点  アプリケーションを呼び出した時点で呼び出し元はDeactivateさ れる  Chooserを呼び出した場合は状態復帰のコードが必要になる
  26. 26. PhoneCallTask 電話をかける  PhoneNumberプロパティ  DisplayNameプロパティ Showメソッドで電話をかける  必ず確認ダイアログが出現する サンプルコード PhoneCallTask phoneCallTask = new PhoneCallTask(); //電話番号をセット phoneCallTask.PhoneNumber = "1234567890123"; //表示名をセット phoneCallTask.DisplayName = "素敵なおひげ"; //電話をかける phoneCallTask.Show();
  27. 27. EmailComposeTask Emailを送信する  Toプロパティ  Subjectプロパティ  Bodyプロパティ Showメソッドでメールを送信する  実際にはメーラーが起動される サンプルコード EmailComposeTask emailComposeTask = new EmailComposeTask(); //送信先アドレス emailComposeTask.To = "username@example.com"; //件名 emailComposeTask.Subject = "件名"; //本文 emailComposeTask.Body = "本文"; //メーラーを起動 emailComposeTask.Show();
  28. 28. その他のLauncherクラス名 機能BingmapTask Bingマップを起動BingmapDicrectionsTask Bingマップを起動(経路検索)ConnectionSettingsTask 接続設定を起動MarketplaceHubTask Marketplaceを起動(ハブ)MarketplaceDetailTask Marketplaceを起動(詳細)MarketplaceReviewTask Marketplaceを起動(レビュー)MarketplaceSearchTask Marketplaceを起動(検索)MediaPlayerLauncher MediaPlayerを起動SearchTask Bing検索を起動ShareLinkTask リンクの共有を起動ShareStatusTask ステータスの共有を起動SmsComposeTask SMSを起動WebBrowserTask WEBブラウザを起動
  29. 29. その他のChooserクラス名 機能AddressChooserTask アドレス帳を取得するCameraCaputureTask カメラを起動し撮った写真を取得するEmailAddressChooserTask メールアドレスを取得するGameInviteTask ゲームへ招待するPhoneNumberChooserTask 電話番号を取得するPhotoChooserTask 画像を取得するSaveContactTask 連絡先を登録するSaveEmailTask Emailアドレスを登録するSavePhoneNumberTask 電話番号を登録するSaveRingtoneTask 着信音を登録する Launcher/Chooserの詳細はMSDNで  http://msdn.microsoft.com/en-us/library/ff769556(v=VS.92).aspx
  30. 30. Push Notification概要
  31. 31. Push Notificationとは 登録したサービスからWindows Phoneへ対する プッシュ配信による通知機能 通知方法は3種類  Toast Notification  Tile Notification  Raw Notification Microsoft Push Notification Service(MPNS)を介して 通知を行う MSDN  http://msdn.microsoft.com/en-us/library/ff402558(v=vs.92).aspx
  32. 32. 処理シーケンス Service Application(Kinect)3. サービスに通知URIを登録 4. 通知URIに対して 通知メッセージを送信 Windows Phone MPNS 2. 通知URIを返す 1. MPNSに対してPushChannelの 登録 5. 通知メッセージに応じた 通知を実行
  33. 33. PushChannelについて Push Notificationを使用するアプリはMPNSに対し てチャネルを登録する必要がある チャネルは1アプリケーション1つのみ登録可能で デバイス内で重複しない名前を付ける必要がある  1つのチャネルで3種類全ての通知が利用可能 1デバイスに対して30チャネルまで登録可能  30チャネルを超えた場合は例外発生
  34. 34. PushChannelの登録方法 HttpNotificationChannelクラス  Microsoft.Phone.Notification名前空間 コードサンプル HttpNotificationChannel PushChannel; //登録済みチャネルがないか検索 PushChannel = HttpNotificationChannel.Find("KinectCall"); // if (PushChannel == null) { //チャネルが見つからない場合は新規登録する PushChannel = new HttpNotificationChannel("KinectCall"); //通知URIが更新された時に発生するイベント PushChannel.ChannelUriUpdated += new EventHandler<NotificationChannelUriEventArgs>(PushChannel_ChannelUriUpdated); //チャネル登録時やプッシュ通知時にエラーが発生した時に発生するイベント PushChannel.ErrorOccurred += new EventHandler<NotificationChannelErrorEventArgs>(PushChannel_ErrorOccurred); //チャネルをオープン PushChannel.Open(); //Toastをバインドする ※Toast Notificatonを使う場合のみ PushChannel.BindToShellToast(); //Tileをバインドする ※Tile Notificatonを使う場合のみ PushChannel.BindToShellTile(); }
  35. 35. 通知URIについて PushChannelを登録したアプリケーションに対して 専用のURIが発行される このURIをプッシュ通知を行うサービスに登録する  通常はクラウドサービスなどを想定 このURIは丌定期に更新される  ChannelUriUpdatedイベント  更新頻度に関するドキュメントは無い?
  36. 36. 通知メッセージの送信方法 通知URIに対してHTTPでPOSTするだけ メッセージの形式は通知方法によって異なる  詳細は後述 送信結果はレスポンスのヘッダから取得  X-NotificationStatus- 通知結果  X-SubscriptionStatus - チャネルの購読状態  X-DeviceConnectionStatus - デバイスの接続状態 詳細はMSDNで  http://msdn.microsoft.com/en-us/library/ff941100(v=vs.92).aspx
  37. 37. 通知メッセージの送信方法//通知URIに対するHTTPリクエストを発行HttpWebRequest NotificationRequest =(HttpWebRequest)WebRequest.Create("http://sn1.notify.live.net/throttledthirdparty/01.00/xxxxxx...xxxxxxx" );//POSTNotificationRequest.Method = "POST";//メッセージの作成(Tile Notificationの場合)string Message = "<?xml version=¥"1.0¥" encoding=¥"utf-8¥"?>" + "<wp:Notification xmlns:wp=¥"WPNotification¥">" + "<wp:Tile>" + "<wp:BackgroundImage>Background.png</wp:BackgroundImage>" + "<wp:Count>0</wp:Count>" + "<wp:Title >KinectCall</wp:Title>" + "<wp:BackBackgroundImage action=¥"clear¥"></wp:BackBackgroundImage>" + "<wp:BackTitle action=¥"clear¥"></wp:BackTitle>" + "<wp:BackContent action=¥"clear¥"></wp:BackContent>" + "</wp:Tile> " + "</wp:Notification>";//バイト配列にエンコードbyte[] notificationMessage = Encoding.UTF8.GetBytes(Message);//Content設定NotificationRequest.ContentLength = notificationMessage.Length;NotificationRequest.ContentType = "text/xml";NotificationRequest.Headers.Add("X-WindowsPhone-Target", "token");NotificationRequest.Headers.Add("X-NotificationClass", "1");//メッセージ送信using (Stream requestStream = NotificationRequest.GetRequestStream()){ requestStream.Write(notificationMessage, 0, notificationMessage.Length);}
  38. 38. Toast Notification 画面上部にメッセージ(Toast)を表示する通知 アプリケーションが終了している時に有効  HttpNotificationChannel.BindToShellToast() クリックするとアプリケーションを起動  遷移先のページ指定も可能
  39. 39. 設定可能な項目 Title  太字のタイトル。約40文字表示可能 Sub Title  細字のサブタイトル。約47文字表示可能 Parameter  クリック時に遷移するページを指定  未指定の場合はMainPageが起動
  40. 40. Toast Notificationの注意点 アプリケーションの初回起動時にToast通知を行う 旨の確認メッセージを出す必要がある  他の通知では丌要 Application Certification Requirements 6.2.2 – Toast Notification Opt-In http://msdn.microsoft.com/en-us/library/hh184838(v=vs.92).aspx
  41. 41. メッセージ形式 Header X-WindowsPhone-Target toast X-NotificationClass 2 – ただちに通知 12 – 450秒以内に通知 22 – 900秒以内に通知 Payload <?xml version="1.0" encoding="utf-8"?> <wp:Notification xmlns:wp="WPNotification"> <wp:Toast> <wp:Text1>たいとる</wp:Text1> <wp:Text2>さぶたいとる</wp:Text2> <wp:Param>/MainPage.xaml</wp:Param> </wp:Toast> </wp:Notification>
  42. 42. Tile Notification ホーム画面のTileを変更する通知 アプリケーション実行中、終了時に有効  HttpNotificationChannel.BindToShellTile() クリックするとアプリケーションを起動  遷移先のページは指定できない
  43. 43. 設定可能な項目(表面) Title  Tile左下に表示するタイトル。約15文字表示可能 BackGroundImage  背景画像。JPEGまたはPNGファイルを指定  画像サイズは173*173ピクセル固定  ファイルはXAP内のリソースかWEB上のイメージを使用可能 (HTTPのみHTTPSは未サポート)  WEB上のイメージを使用する場合、サイズは80KB以下にする 必要があり、30秒でタイムアウトする。 Count  Tile右上に表示する数値。いわゆるBadge  1~99まで設定可能
  44. 44. 設定可能な項目(裏面) BackTitle  Tile左下のタイトル約15文字表示可能 BackBackGroundImage  背景画像  画像の仕様はBackgroundImageと同様 BackContent  Tile上部に表示する文字列。約40文字表示可能
  45. 45. Tile Notificationで出来ないこと 表裏の切り替えタイミングの設定 アニメーションする画像  People、Gamesの様なTileは作れない
  46. 46. メッセージ形式 Header X-WindowsPhone-Target token X-NotificationClass 1 – ただちに通知 11 – 450秒以内に通知 21 – 900秒以内に通知 Payload <?xml version="1.0" encoding="utf-8"?> <wp:Notification xmlns:wp="WPNotification"> <wp:Tile> <wp:BackgroundImage>Red.Jpg</wp:BackgroundImage> <wp:Count>1</wp:Count> <wp:Title>おもて</wp:Title> <wp:BackBackgroundImage>Blue.jpg</wp:BackBackgroundImage> <wp:BackTitle>うら</wp:BackTitle> <wp:BackContent>こんてんつ</wp:BackContent> </wp:Tile> </wp:Notification>
  47. 47. Tileを元に戻すには? Clear属性を付けたメッセージを通知 <?xml version="1.0" encoding="utf-8"?> <wp:Notification xmlns:wp="WPNotification"> <wp:Tile> <wp:BackgroundImage>Background.png</wp:BackgroundImage> <wp:Count action="clear"></wp:Count> <wp:Title >KinectCall</wp:Title> <wp:BackBackgroundImage action="clear"></wp:BackBackgroundImage> <wp:BackTitle action="clear"></wp:BackTitle> <wp:BackContent action="clear"></wp:BackContent> </wp:Tile> </wp:Notification> ShellTile.Update()メソッドを実行  StandardTileData
  48. 48. Raw Notification ユーザー定義のデータ(Raw Data)を通知  定義内容は自由 アプリケーション実行中のみ有効 HttpNotificationChannel.HttpNotificationReceived イベントで通知データを受信  HttpNotificationEventArgs.Notification.Body
  49. 49. メッセージ形式 Header X-WindowsPhone-Target 指定丌要 X-NotificationClass 3 – ただちに通知 13 – 450秒以内に通知 23 – 900秒以内に通知 Payload  ユーザーが独自に定義  XMLである必要もない  通知の受信側でメッセージの解析が必要
  50. 50. 補足
  51. 51. Winodows Phone 7→ Kinectへの通信 Push NotificationではKinectからWindows Phone 7 への通信のみ  リアルタイムな処理には当然向かない Windows Phone OS 7.1からSocket通信がサポート される様になったので、Windows Phone 7から Kinectへの通信が実装可能  よりリアルタイムな処理もできると思われる  誰か試してください…
  52. 52. ご静聴ありがとうございました

×