• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Universal Windows app 入門
 

Universal Windows app 入門

on

  • 383 views

 

Statistics

Views

Total Views
383
Views on SlideShare
378
Embed Views
5

Actions

Likes
3
Downloads
5
Comments
0

2 Embeds 5

http://www.slideee.com 4
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Universal Windows app 入門 Universal Windows app 入門 Presentation Transcript

    • Universal Windows app 入門 どんなテクノロジなのか?どこまでできるのか? 大田 一希
    • お約束事項 • 掲載内容は私自身の見解であり、所属する組織を代 表するものではありません
    • 自己紹介 • 名前  大田 一希(かずき)  Twitter:@okazuki • 肩書き  Microsoft MVP for Client App Dev 2011/07-2014/06 • Blog  かずきのBlog@hatena http://okazuki.hatenablog.com/ • 猫派/犬派  犬派
    • 今日のゴール • Universal Windows appについて1つ「へ~っ」って 思ってもらう
    • Universal Windows appとは 12:38 Start User Name
    • 売り文句 • ワンソースでマルチプラットフォームのアプリが開 発できる ローミング データ共有 ストア上で同 じアプリ扱い
    • 開催日 > プログラム > Text Text Text Text Universal Windows app 入門 etc etc 2014/05/10 @なぞ社 2014/05/10 @なぞ社 お知らせ
    • 12:38 WPArch text text text text お知らせ
    • 実現するための仕組み 1 • Windows RuntimeがWindows Phoneに実装された Windows Kernel Services 入力、インタラクション、etc… DirectX、メディア、etc… Windows Runtime C/C++ C#/VB XAML JavaScript HTML/CSS
    • 高い互換性 Windows store app Windows Phone app 固有部分 • SettingFlyout • AppBar • SearchBox • etc… 固有部分 • BackButton • Pivot • System Chrome • etc…
    • 実現するための仕組み 2 • IDEによるサポート  Windows(Windows 8.1)  ストアアプリのプロジェクト  WindowsPhone(Windows Phone 8.1)  Windows Phoneアプリのプロジェクト  Shred  共通部分のコードを置く  プラットフォーム固有部は#if ディレクティブ
    • コンパイル時の動作 • コンパイルは別々に行われる  Windows store app + Sharedプロジェクト  Windows Phone app + Shared プロジェクト
    • 地味に非互換 • 90%以上の互換性の厄介さはご存知ですよね?
    • 非互換とTips
    • ケース1「戻る」 • Windows Phoneでは、ハードボタンの戻るを処理し ないとアプリが閉じてしまう 12:38 October, 2010 Su Mo Tu We Th Fr Sa 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1 2 3 4 5 6 App1
    • ケース1「戻る」 • 対処方法  以下のコードをページに入れる #if WINDOWS_PHONE_APP Windows.Phone.UI.Input.HardwareButtons.BackPressed += (_, e) => { if (this.Frame.CanGoBack) { e.Handled = true; this.Frame.GoBack(); } } #endif
    • ケース2「ヘッダー」 • WindowsとWindows Phoneのヘッダー違うよね…? • 同じ名前のUserControl定義テクニック UserControl1 UserControl1 Page Windows store app Windows Phone app
    • ケース3「GridViewの見た目」 • ストアアプリと同じItemTemplateでいける? • 同じ名前のリソース定義テクニック ItemTemplate1 ItemTemplate1 Page Windows store app Windows Phone app 同じ要領でStyleも出来ます。
    • ケース4「本当に画面を共通化する?」 • 共通化可能だが…  これまでのテクニックでワンソース+αで作成可能 • 現実解は基本別々に作って共通化可能な部分を UserControlで作成する
    • ケース4「本当に画面を共通化する?」 Model ViewModel View Shared 個 別
    • Universal Windows appの所感 • 画面の共通化は、かなり難しい  共通のUserControl  同名のStyleやUserControl • その他の部分の共通化はかなり便利
    • まとめ • Universal Windows appとは以下の機能の組み合わせ  Windows ストアアプリとWindows Phoneアプリの高い互換 性  ユーザーがコードをリンクとして追加して管理してたコー ド共有をIDEが面倒を見てくれる  ストアに登録するときに同じアプリとして登録できる  ローミングデータを共有できる • 注意点  共通化するべき個所は何処か見極める