Download presentation
Presentation is loading. Please wait.
Published byえいじろう かりこめ Modified 約 8 年前
1
Introducing Windows Runtime Hokuriku.NET vol.15 2014/8/30 Sat 遥佐保(はるか・さお)
2
はじめに
3
@hr_sao Room metro Osaka C++ テンプレート読書会 Microsoft MVP for Client App Dev[Jan,2010-Dec,2013] Microsoft MVP for Client Development [Jan,2014-Jun,2014] Microsoft MVP for Windows Platform Development [Jul,2014-Dec,2014]
4
Windows Runtime のファンを増やす! もっと一緒に勉強してくれる人が増えたらいいな … 本日の目的
5
1. Windows Runtime architecture 2. Process 3. Features 4. Visual Studio Template 5. Universal windows apps 6. Windows store 7. Add deployment Topics
6
1. Windows Runtime architecture
7
Windows Runtime Technology Stacks Windows SDKs WinRT (native) XAML -Windows8.1 DirectX / XAML -DirectX11.2 C/C++ -C++11 CRT HTML / CSS -Trident C# / VB FCL JavaScript -Chakra WinJS 描画 言語 VM CLR (native) Internet Explorer -WWAHost.exe Win32 / COM Core Controls Data and content Devices Files and Folders Globalization Graphics Helpers Media Networking Printing Presentation Remote Desktop Security Social UI Automation User interaction API (公開さ れてい る機能) Desktop Windows Store Apps
8
Windows Store Apps から Win32/COM へは、原則呼び出し禁止 Windows Store Apps から呼び出しを許可されている COM はある http://msdn.microsoft.com/en-us/library/br205753 http://msdn.microsoft.com/en-us/library/br205753 Win32 and COM for Windows Store apps Windows SDKs Windows Runtime Win32 / COM Desktop AppsWindows Store Apps
9
Windows SDKs Windows Runtime Use Language Windows Store Apps C/C++ -C++11 C# / VB JavaScript -Chakra
10
全ての言語から利用できるための API とは? WinMD ファイル – metadata (ECMA-335) C:\Windows\System32\WinMetadata にある.winmd 拡張子 型やメンバが 記述されている Windows MetaData
11
メタデータを記載している Windows Runtime の実体は EXE や DLL HKLM\Software\Microsoft\WindowsRuntime\ActivatableClassId WinMD DLL
12
Windows SDKs Windows Runtime Application Binary Interface Windows Store Apps C/C++ C# / VB JavaScript Application Binary Interface Windows Runtime は全て、 ABI を通じて API 提供を行う
13
Windows SDKs Windows Runtime WinRT API projection - C#/VB Windows Store Apps Windows Runtime WinMD C# / VB 1 2 CLR
14
Windows SDKs Windows Runtime WinRT API projection - C++/CX Windows Store Apps C/C++ Windows Runtime WinMD 1 2
15
Windows SDKs Windows Runtime WinRT API projection - JavaScript Windows Store Apps Windows Runtime WinMD JavaScript Internet Explorer -WWAHost.exe
16
Windows SDKs Windows Runtime Windows Store Apps C/C++ C# / VB JavaScript Application Binary Interface Windows Runtime と ABI のおかげで、各言語の相互利用が可能
17
2. Process
18
プロセスが Active 化するのは 2 パターン メインビューのアクティブ化 Activation (1)
19
Activation (2) ホステッドビューのアクティブ化
20
アクティブ化の方法は 2 つある Windows ストアアプリのインスタンスは 1 つ - App オブジェクトはシングルトン Initialization
21
Process life time アプリに終了の概念はなし 待機時、バックグラウンドタスクを実行できる Background task
22
3. Features
23
パッケージデータ ストレージ ストリーム ネットワーク 通知 バックグラウンドタスク Windows Runtime Features 共有 広告 アプリ内課金
24
Package Data
25
Windows::Storage::ApplicationData::Current いわゆるセーブ領域 テンポラリ保存 ローカル保存 ローミング C:\Users\[ ユーザ名 ]\AppData\Local\Packages \[ パッケージファミリ名 ]\LocalState\_sessionState.dat ApplicationData
26
Notification ?
27
Push Notification Windows Push Notification Services (1) ストアアプリの初回起動で PushNotificationChannelManager.CreatePushNotificationCahnellForApplicationAsync() を実行 (1) (2) (2) Web サービスにチャネル URI (さっき (1) で取得したもの)を 送信する ※ 30 日で期限は切れる URI (例) https://xxx.notify.windows.com/?token=xxx
28
Push Notification Windows Push Notification Services (3) 取得した URI(2) に、通知したいメッセージを付けて WNS に送信する ※アプリ開発者だけが知っているクライアントシークレットを 付けて OAuth トークンを発行してもらう (1) (3) (4) タイルの更新やトースト通知が実施される (2) (4)
29
Sharing data between apps
30
クリップボードはシステムで 1 つだけ static 実装されている Windows.ApplicationModel.DataTransfer.Clipboard Sharing data - Clipboard
31
例 ← ← IE のリンクを受け取 る FB アプリ Shareing 共有ソースアプリ (共有するデータを持っている) ターゲットアプリ (共有されたデータを受け取る)
32
ソースアプリ( IE )で共有したいものを DataPackage に入れておく ※ターゲットアプリ( FB )と共有できる Windows.ApplicationModel.DataTransfer.DataPackage Sharing data - DataPackage
33
Advertisement
34
* Windows ストア アプリで収益を上げるには - http://www.microsoftvirtualacademy.com/training-courses/decode-track1http://www.microsoftvirtualacademy.com/training-courses/decode-track1
35
Microsoft Advertising SDK のインストール - http://adsinapps.microsoft.com/ja-jp/sdkhttp://adsinapps.microsoft.com/ja-jp/sdk Microsoft pubCenter に登録 - https://pubcenter.microsoft.comhttps://pubcenter.microsoft.com Ad Control の貼り付け Advertisement
36
テスト用のコードが簡単に利用できる 自分のやつは pubCenter で Get! Ad control
37
アプリ内課金 Windows.ApplicationModel.Store アプリケーションのライセンスの状態を確認 (評価版またはアクティブなライセンスなど) アプリ内機能の確認 アプリ内購入
38
4. Visual Studio Template
39
IPropertySet^ vals = ApplicationData::Current->LocalSettings->Values; if( vals->HasKey( "my_data” )){ vals->Remove( “my_data"); } vals->Insert( "my_data", “Hokuriku" ); if( pageState->HasKey( "my_data” )){ pageState->Remove( “my_data" ); } pageState->Insert( "my_data", “Hokuriku" ); Ex) ApplicationData ApplicationData を直接使う VS テンプレートの NavigationHelper クラスの pageState を使う
40
VS 付随のプロジェクトテンプレートがある テンプレート固有話なのか? WinRT の話なのか? Visual studio Template
41
5. Universal windows apps
42
1 つのソースで Windows ストアアプリと Windows Phone アプリの開発が出来る - ただし、 XAML は別 どちらかのストアで購入すると、もう片方でも 購入済みになる データが同期される * めとべや東京 #4 の資料公開。「ユニバーサル Windows アプリ入門」 # めとべや東京 - http://okazuki.hatenablog.com/entry/2014/05/31/153328http://okazuki.hatenablog.com/entry/2014/05/31/153328
43
これからプロジェクトを作るなら、ユニバーサル がおススメ Windows Phone → Universal apps いばらの道 Windows store apps → Universal apps まぁ出来る Universal apps → Windows store apps WP 版を使わなけ ればよい Universal apps → Windows Phone ストア版を使わ なければよい
44
6. Windows store
45
https://msdn.microsoft.com/ja-jp/windows/apps Windows Developer Center
46
ストアへの お布施 (年単位)
47
とにかく名前を登録する プッシュ通知などに必要 な情報はここでしか得ら れない (※企業用は別) app for certification
48
Live Services site http://msdn.microsoft.com/ja-jp/library/windows/apps/xaml/hh868206.aspx
51
7. App deployment
52
「アプリをデプロイする」「配布する」とは? → 開発者が Windows ストアに 自分のアプリを登録すること ※その後、ユーザはアプリをクライアント PC に インストールする Deployment …?
53
(1) Visual Studio で開発し Visual Studio から実行 開発者ライセンスを使って実行 - 無料ライセンス( 30 ~ 90 日程度で更新かな ? ) もちろん VS 持ってないとダメ How to Install (1/4)
54
(2) Add-AppxPackage PowerShell コマンドを用いて インストールする 開発者ライセンスを使って実行 パッケージの証明書入れる必要あり ( CertUtil.exe ) Add-AppxPackage でインストール * # めとべや 東京 2 で Sideloading Windows Store apps with PowerShell について発表して きました 資料公開 http://tech.guitarrapc.com/entry/2013/10/15/073820 http://tech.guitarrapc.com/entry/2013/10/15/073820 How to Install (2/4)
55
(3) 企業内でサイドローディングして配布する ActiveDirectory 参加必須 - なので無印 WindowsRT はだめ(企業向け) エンタープライズサイドローディングキーを別 途購入する必要がある * WINDOWS ストア アプリのサイドローディングについて http://blogs.msdn.com/b/japan_platform_sdkwindows_sdk_support_team _blog/archive/2014/03/12/2014-03-12-windows.aspx http://blogs.msdn.com/b/japan_platform_sdkwindows_sdk_support_team _blog/archive/2014/03/12/2014-03-12-windows.aspx How to Install (3/4) Open License, Select Plus で購入可能 Windows 8.1 Enterprise Sideloading (10 Pack) と Windows 8.1 Enterprise Sideloading (100 Pack) がある
56
(4) Windows ストアに出す! マイクロソフトがアプリを事前にチェック 合格したものだけをストアに出展 ストアに出すためにアプリ開発契約者(有料) になる必要がある Windows ストアから Download & Instatll How to Install (4/4)
57
Fun…
58
クライアントで動作する Windows Runtime の 仕組みを知る Windows Runtime の固有機能を知る その次に Visual Studio Template/Universal windows apps Windows ストアの登録、配布、インストール も忘れずに Let’s Windows Runtime
59
プログラミング WindowsRuntime 参考
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.