Visual Studio 2015を使った新時代のアプリ開発

Visual Studio 2015を使った
新時代のアプリ開発
2015/05/22
サイエンスパーク株式会社
開発部デバイスドライバ課
鈴木大輔
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
1
目次
1. はじめに
 背景
2. ユニバーサルアプリ開発
 概要
 ユニバーサルアプリ作成1
 ユニバーサルアプリ作成2
3. クロスプラットフォーム開発
 概要
 Android Nativeアプリ作成
4. 最後に
 まとめ
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
2
目次
1. はじめに
 背景
2. ユニバーサルアプリ開発
 概要
 ユニバーサルアプリ作成1
 ユニバーサルアプリ作成2
3. クロスプラットフォーム開発
 概要
 Android Nativeアプリ作成
4. 最後に
 まとめ
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
3
背景 1/5
Visual Studio 2015 発売
Windows 10の発売に合わせて2015年夏頃の予定。
Visual Studio 2015 エディション
① Professional
② Enterprise
③ Community
Visual Studio 2013との違い
① Windows Universal Appのバージョンアップ
② クロスプラットフォーム開発の強化
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
4
背景 2/5
Windows Universal Appのバージョンアップ(1)
一つのバイナリが複数のデバイス上で実行できる。
From:http://channel9.msdn.com/events/WinHEC/2015/Developing-for-the-Windows-10-Device-Platform
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
5
背景 3/5
Windows Universal Appのバージョンアップ(2)
プロジェクト内でもPC用とWindows Phone用に
分かれず統一される。
(1)Windows 8.1
Driverware Solution by SciencePark
(2)Windows 10
Copyright@SciencePark Corp.
6
背景 4/5
クロスプラットフォーム開発の強化(1)
From:http://www.microsoftvirtualacademy.com/training-courses/crossplatformdev
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
7
背景 5/5
クロスプラットフォーム開発の強化(2)
From:http://www.microsoftvirtualacademy.com/training-courses/crossplatformdev
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
8
目次
1. はじめに
 背景
2. ユニバーサルアプリ開発
 概要
 ユニバーサルアプリ作成1
 ユニバーサルアプリ作成2
3. クロスプラットフォーム開発
 概要
 Android Nativeアプリ作成
4. 最後に
 まとめ
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
9
概要 1/2
具体的に何が違うのか?
基本的な作りはストアアプリと一緒。
Universal App Platform SDKの動作環境には
注意すること。
動作環境は以下のデバイス・ファミリー毎に分かれる。
ユニバーサル
デバイス・ファミリー
デスクトップ
デバイス・ファミリー
モバイル
デバイス・ファミリー
Driverware Solution by SciencePark
IoT
デバイス・ファミリー
Xbox
デバイス・ファミリー
Copyright@SciencePark Corp.
10
概要 2/2
ユニバーサルアプリのメリットは?
① 一つのバイナリが複数の環境で起動できる
② ソースコードを共通化できる
③ 今後IoTやXbox対応がスムーズになる
開発言語
①
②
③
④
C#(XAML)
C++(XAML/DirectX)
Java Script(HTML5)
Visual Basic(XAML)
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
11
ユニバーサルアプリ作成 1/12
位置情報を取得して、現在地を中心に表示する
地図アプリを作成する。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
12
ユニバーサルアプリ作成 2/12
開発環境
① Windows 10 Enterprise Insider Preview Build
10122 日本語版 64bit
② Visual Studio Enterprise 2015 RC
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
13
ユニバーサルアプリ作成 3/12
開発者モードの設定
スタートメニューの設定→更新とセキュリティを開く。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
14
ユニバーサルアプリ作成 4/12
インストール方法
ユニバーサルWindowsアプリ開発
ツールにチェックを入れる。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
15
ユニバーサルアプリ作成 5/12
ユニバーサルアプリの作り方
① プロジェクト作成
② コーディング
③ デバッグ実行
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
16
ユニバーサルアプリ作成 6/12
プロジェクト作成
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
17
ユニバーサルアプリ作成 7/12
コーディング(1)
VS2015では、ツールボックスから地図画面が追加可能。
From: https://msdn.microsoft.com/en-us/
library/windows/apps/xaml/dn642089.aspx
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
18
ユニバーサルアプリ作成 8/12
コーディング(2)
VS2015の地図画面を使用する場合、Bing Maps
Developer センターから認証キーを入手する。
From: https://www.bingmapsportal.com/Application
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
19
ユニバーサルアプリ作成 9/12
コーディング(3)
位置情報を使用する場合、マニフェストファイルに
以下の定義を追加する。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
20
ユニバーサルアプリ作成 10/12
コーディング(4)
現在地の位置情報取得に使用するWinRT APIは
以下の通り。
WinRT API
Geolocator.GetGeopositionAsync
デバイス・ファミリー
ユニバーサル
説明
デバイスの現在の位置を取得する。
位置情報機能は、以下の情報源から取得する。
情報源
精度
GPS
約10メートル以内。
Wi-Fi
約30メートルから500メートル。
携帯電話の電波塔
約300メートルから3,000メートル。
IPアドレス
約1,000メートルから5,000メートル。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
21
ユニバーサルアプリ作成 11/12
デバッグ実行(1)
VS2015には、Windows 10 Mobile エミュレーターが
同梱されている。
使用できる環境は以下の5つ。
①
②
③
④
⑤
Emulator 10.0.1.0 WVGA 4 inch 512MB
Emulator 10.0.1.0 WVGA 4 inch 1GB
Emulator 10.0.1.0 WVGA 4.5 inch 1GB
Emulator 10.0.1.0 720p 5 inch 1GB
Emulator 10.0.1.0 1080p 6 inch 2GB
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
22
ユニバーサルアプリ作成 12/12
デバッグ実行(2)
実際にデモを行う。
① Windows 10 Desktop上での実行
② Windows 10 Mobile エミュレーター上での実行
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
23
ユニバーサルアプリ作成2 1/5
音声を認識して、特定の地点に移動する
地図アプリを作成する。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
24
ユニバーサルアプリ作成2 2/5
コーディング(1)
Windows10の音声機能は以下の3点。
① 音声コマンド
② 音声認識
③ 音声合成
②
①
③
From:https://msdn.microsoft.com/ja-jp/library/windows/apps/xaml/dn630426.aspx
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
25
ユニバーサルアプリ作成2 3/5
コーディング(2)
音声機能を使用する場合、マニフェストファイルに
以下の定義を追加する。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
26
ユニバーサルアプリ作成2 4/5
コーディング(3)
音声認識に使用するWinRT APIは以下の通り。
WinRT API
デバイス・ファミリー
説明
SpeechRecognizer.CompileConstraintsAsync
ユニバーサル
音声認識の制約をコンパイルする。
SpeechRecognizer.RecognizeWithUIAsync
ユニバーサル
音声認識セッションを開始する。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
27
ユニバーサルアプリ作成2 5/5
デバッグ実行
実際にデモを行う。
① Windows 10 Mobile エミュレーター上での実行
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
28
目次
1. はじめに
 背景
2. ユニバーサルアプリ開発
 概要
 ユニバーサルアプリ作成1
 ユニバーサルアプリ作成2
3. クロスプラットフォーム開発
 概要
 Android Nativeアプリ作成
4. 最後に
 まとめ
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
29
概要 1/2
From:http://www.microsoftvirtualacademy.com/training-courses/crossplatformdev
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
30
概要 2/2
クロスプラットフォーム開発のメリット
コーディングやデバッグの際、Visual Studioの
便利な機能が使える。
インテリセンス
ブレークポイント
呼び出し履歴
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
31
Android Nativeアプリ作成 1/8
Android端末を振ると、画面の色を変える
アプリを作成する。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
32
Android Nativeアプリ作成 2/8
開発環境
① Windows 10 Enterprise Insider Preview Build
10122 日本語版 64bit
② Visual Studio Enterprise 2015 RC
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
33
Android Nativeアプリ作成 3/8
インストール方法
クロスプラットフォームモバイル
開発にチェックを入れる。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
34
Android Nativeアプリ作成 4/8
Android Nativeアプリの作り方
① プロジェクト作成
② コーディング
③ デバッグ実行
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
35
Android Nativeアプリ作成 5/8
プロジェクト作成
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
36
Android Nativeアプリ作成 6/8
コーディング
Android端末のセンサーにアクセスするAPIは
以下の通り。
API
説明
ASensorManager_getInstance
センサーマネージャーのインスタンスを
取得する。
ASensorManager_getDefaultSensor
指定したタイプのデフォルトセンサーを
取得する。
ASensorManager_createEventQueue
新しいセンサーイベントキューを作成する。
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
37
Android Nativeアプリ作成 7/8
デバッグ実行(1)
VS2015には、Androidエミュレーターが同梱されている。
使用できる環境は以下の4つ。
①
②
③
④
VS Emulator 5” KitKat (4.4) XXHDPI Phone
VS Emulator 7” KitKat (4.4) XXHDPI Tablet
VS Emulator 5” Lollipop (5.0) XXHDPI Phone
VS Emulator 7” Lollipop (5.0) XXHDPI Tablet
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
38
Android Nativeアプリ作成 8/8
デバッグ実行(2)
実際にデモを行う。
① Andoroid エミュレーター上での実行
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
39
目次
1. はじめに
 背景
2. ユニバーサルアプリ開発
 概要
 ユニバーサルアプリ作成1
 ユニバーサルアプリ作成2
3. クロスプラットフォーム開発
 概要
 Android Nativeアプリ作成
4. 最後に
 まとめ
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
40
まとめ 1/1
Windowsをメインに開発していた多くの人に対し、
新しいプラットフォームでの開発が容易になった。
それにより、今後はスマートフォンや複数のOS
対応も視野に入れなければならない。
何かお困りのことがあれば、Windows,
Android,iOSでの開発実績のある
サイエンスパークにご相談ください‼
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
41

Presented by SciencePark
Driverware Solution by SciencePark
Copyright@SciencePark Corp.
42