Mais conteúdo relacionado
Semelhante a Sumaben#11 (20)
Mais de Yutaka Tsumori (20)
Sumaben#11
- 2. こんにちは!
• tmyt/つもゆた っていいます。
• だいたい大学院生をやっています。
• WindowsMobileシリーズに一途です。
• 先日iPhone/iPad持ってないのでdisられました。
• Azureaとか作ってます。
• C++担当です。
• ARMのアセンブラは一般教養です!
- 5. WindowsPhone7でできなくなったこと
• タスクを並列して2個以上同時に実行すること
• ネイティブコードを実行すること
• 実行中にコードを書き換えること
• 変数に代入した機械語を実行すること
• 他人のプロセスをフックしていろいろすること
• ファイルシステムへアクセスすること
• システムDLLをP/Invokeしていろいろすること
• などなど。変態的なことは基本的にできません
- 6. 現時点でできないこと
• 日本語入力
• これ重要。
• 日本人からするとただこの一つに尽きます
• 解決策を後ほど…
• エミュレータ上でのLiveIDの設定
• エミュレータ上でのメールアカウントの設定
- 8. できるようになったこと
• 加速度センサへのアクセス
• DeepZoomの利用
• 4点以上のマルチタッチ
• Silverlightを使用したアプリケーション開発
• PushNotificationの利用
• 統合されたロケーション情報へのアクセス
- 9. 従来のWindowsMobileとの違い
• 外部の情報へのアクセスにTaskを使用
• 写真を撮るも開くも、アドレス帳から選択してくるのもみんな同じ
手順で利用可能に
• タスクが殺される前にコンテキストの保存をしないといけなく
なった
• 開発がSilverlightになったのでXAMLをいじらないといけなく
なった
• XNAが使えるようになった
• Silverlight+XNAのキメラもできます!
- 12. 開発する上での注意
• XAPは400MBまで
• マーケットプレイスを経由していないアプリケーションは10個まで
• UIスレッドをブロックするコードは書けません
• Unlockできる端末は3台まで
• Etc…
- 21. いろいろなものを開くTask
• アプリケーションからデータにアクセスする場合はTaskを経由しなけれ
ばなりません。
• Taskはこんなのが用意されています
• CameraCaptureTask
• EMailAddressChooserTask
• EmailComposseTask
• MarketplaceDetailTask
• MarketplaceSearchTask
• PhoneCallTask
• PhoneNumberChooserTask
• PhotoChooserTask
• SaveEmailAddressTask
• SavePhoneNumberTask
• SearchTask
• SmsComposeTask
• WebBrowserTask
- 23. CameraCaptureTask
• カメラを起動して画像を入力
• WMでいうところのCameraCaptureDialog
• C++だとSHCameraCapture
• 撮影した写真は保存されません
- 40. WMでのロケーション
• GPSのみ
• Intermidiate Driverが仮想化してくれていた
• 基地局測位は自分でがんばるしかない
• PHSだとCOM叩きますよね
• 3GだとRILのCE向けAPIを叩きます
• 叩いた後GoogleのAPIとかに投げると経度緯度に変換してくれたり
• いろいろ大変でした。
- 41. WP7でのロケーション
• とても楽になりました。
• .NET 4のロケーションAPIと互換
• つまりWindows7のロケーションAPIと互換
• GPSを扱えます
• 基地局測位もあつかえます
• Wifi測位も使えるかもしれません
• 全部まとめて1つのインターフェースで提供されます
• 位置検出デバイスを指定できないのがちょっと残念
- 42. コードで書くとこんな感じ
public partial class Location
{
GeoCoordinateWatcher geo;
public Location()
{
geo = new GeoCoordinateWatcher();
geo.PositionChanged += new
EventHandler<GeoPositionChangedEventArgs<GeoCoordinate>>(g
eo_PositionChanged);
}
void geo_PositionChanged(object sender,
GeoPositionChangedEventArgs<GeoCoordinate> e)
{
// いろいろ
}
}
- 44. DeepZoomって?
• Deep Zoom は、高解像度のイメージをインタラクティブに表示
できる機能です。アプリケーションのパフォーマンスに影響を及
ぼさずにすばやく、イメージをズームインしたりズームアウトしたり
できます。Deep Zoom では、複数解像度のイメージを用意し、
スプリング アニメーションを使用することによって、滑らかな読
み込みとパンを可能にしています。
• http://msdn.microsoft.com/ja-jp/library/cc645050(VS.95).aspx
• つまりGoogleMapのWebみたいなのをやるコントロールです
- 45. とりあえず使ってみる
• Deep Zoom Composerで画像を分割、XMLを生成
• VSのプロジェクトに追加
• MultiScaleImageコントロールを配置
• Sourceにxmlのパスを設定
• とりあえずこれだけ書けば使えます。
- 57. 日本人の最大の悩み
• そう、それは、日本語入力
• WMではATOKとかインストールしてましたね
• Windows Phone 7では日本での発売が未定なのもあるのか
IMEは実装されていません
• 今後実装されるでしょう!
• でもいま日本語入力が使いたい!とおもうのはしかたないこと。
• 悲しくも僕たちはデベロッパなのでIMEを作るかという発想にい
たるわけです…