読者です 読者をやめる 読者になる 読者になる

Windows10 Mobile、UWPに関する基本情報と、Unityアプリの実機転送方法

Unity UWP

前回に引き続き、今度はWindows 10 Mobileの場合を調べました。

前回はこちらです。

magicbullet.hatenablog.jp

======================

目次

1. Windows 10 Mobile とUWPについて

1-1. Windows 10

1-2. Windows 10 Mobile

1-3. UWP

2. Unityで作ったアプリをWindows 10 Mobileに実機転送する方法

2-1. Unityを5.2以上にする

2-2. Visual Studio をインストール

2-3. Unityでビルドして、Visual Studioのプロジェクトを生成する

2-4. Windows 10 Mobileを開発者モードに変更する

2-5. Visual Studioを開いてビルドする

3. Tips

3-1. Windows 10 Mobileでの動作結果

3-2. スクリーンロック時は実機転送が失敗する

3-3. 今回作ったUWPはWindows10 PCでも動かせる?

4. Windows 10 Mobile (KATARA 01)で動かしてみた感想

======================

1. Windows 10 Mobile とUWPについて

1-1. Windows 10

Windows 10 Mobileとは、2015年にMicrosoftより発表された、Windows Phoneの新しいOSです。

これまでの Windows PhoneからRuntime を刷新し、PCやその他Windows機器と同一のOSで動作します。

f:id:Takyu:20160601091842p:plain

関連:
Developing for the Windows 10 Device Platform | Windows Experience Blog


Microsoftでは、Windows10で動くデバイス一覧をWindows 10 Family と呼んでいます。

f:id:Takyu:20160601133212j:plain

関連:The next generation of Windows: Windows 10 | Windows Experience Blog

この図のように、PCだけでなく、スマートフォン、ゲーム機器、HoloLensなどの幅広い範囲のデバイスが全て同一のOSで動作します。

1-2. Windows 10 Mobile

Windows 10 Mobileは、Windows 10 OSを備えたモバイル端末です。2015年の11月頃にFREETELをはじめとした各社が対応端末を発売しました。

iOSAndroid搭載端末のような機能が付いているスマートフォンですが、それらにはない機能として、Continuum(コンティニュアム:読み方は人によって異なります)という機能があります。

Continuumとは、PC用ディスプレイを介することで、下記のように、スマートフォンをPCのように使える仕組みです。

f:id:Takyu:20150429110108j:plain

参考
www.gadgethelpline.com


ただし、Continuumが可能な端末は限られており、Snapdragonと呼ばれるSoc(CPUや各種機能をまとめたチップ)のうち、型番が600以上のSoCであれば対応しているようです。

www.qualcomm.co.jp

www.itmedia.co.jp



ちなみに、私の場合、Windows 10 Mobileのエントリーモデルである「KATANA01」を発売日当日に買って、ざっと調べたことがあります。

www.freetel.jp


f:id:Takyu:20160601140930j:plain

f:id:Takyu:20160601140940j:plain

KATANA01については、12,800円という低価格で、よくこれだけの端末が発売できた、と思っています。

しかし、残念ながら搭載しているSoCがSnapdragon210シリーズと、ローエンドモデルのため、どうしても動作が遅いことがありました。

Qualcomm Snapdragon 210 MSM8909 Specs and Reviews


個人的にはWindows 10 Mobileのタイルっぽい雰囲気とか操作の方法が好きだったので、性能良い機種が出た時にまた試したいと思っています。
(4インチ台が出たらいいなと思います)


1-3. UWP

UWPとは、Universal Windows Platform の略です。Windows 10 Family上で共通で動く仕組み、と考えるのが良いと思います。

そして、UWPの概念に沿ったアプリケーションをUWPアプリと呼びます。

UWPアプリであれば、下記の概念図のように同一アプリが異なるデバイスで動作します。

f:id:Takyu:20160601134335j:plain

[注意]

・デバイス別の画面解像度設定は必要です。

・「電話をかける」機能がMobile端末にしかないなど、特定のWindows 10 OS端末にしかない機能は、マニフェストファイルで制限をかける必要があります。


2. Unityで作ったアプリをWindows 10 Mobileに実機転送する方法


では、Unityで作ったアプリをWindows 10 Mobileで動かす方法を説明します。

2-1. Unityを5.2以上にする

公式ブログで言及されています。

blogs.unity3d.com

今回はUnity5.3.5f1で試しました。

Unity5.3以降では、ビルド対象のプラットフォーム別にインストールできます。

Windows 10 Mobile用にビルドするには、Windows Storeというプラットフォームでビルドしますが、必要なモジュールが入ってないと、「No Windows Store module loaded 」というメッセージがでます。

f:id:Takyu:20160601224552j:plain


Open download pageというボタンがあるのですが、ここをクリックしても、

f:id:Takyu:20160601224821j:plain

というhtmlページが開くだけで入手することはできません。

実際は、現在使っているUnityを同じバージョンのインストーラを再度入手し、インストール時にWindows Store用のモジュールを選択することで、追加インストールができます。

■Unityのインストーラの入手場所

[https://www.visualstudio.com/ja-jp/downloads/download-visual-studio-vs#DownloadFamilies_2:title=f:id:Takyu:20160601225210j:plain]

Windows Store用のモジュール選択画面

f:id:Takyu:20160601225600p:plain

この二つだけで10GB近くあるので、インストールには時間がかかります。


なお、バージョンが異なるモジュールをインストールすると、インストールは完了しても後でビルドに失敗するのでご注意ください。

2-2. Visual Studio をインストール

個人であれば、Visual Studio Community 2015が使えますので、ここからダウンロードしてインストールします。

なお、インストール時は、「カスタム」を選び、「Tool and Windwos 10 SDK」と「Windows 10 SDK」にチェックを入れておきます。

また、「プログラムと機能」から、インストール後に追加もできます

f:id:Takyu:20160601221937p:plain

ちなみに、インストールサイズは10GBを超えるので、時間がかかります。

2-3. Unityでビルドして、Visual Studioのプロジェクトを生成する

ここはそのままです。Unityで好きなものを作ります。

今回は、uGUIの標準部品を一通り並べたものを準備しました。

f:id:Takyu:20160601222206j:plain

次にこれをビルドします。Build Settingsを開き、PlatformをWindows Storeに変更し、SDKを「Windows 10」にします。

f:id:Takyu:20160601222438p:plain

それ以外は特に変えなくてもビルドできます。

適当なフォルダを作り、「Build」をクリックすると、指定したフォルダにVisual Studioのプロジェクトが生成されます。

f:id:Takyu:20160601224100j:plain

2-4. Windows 10 Moibleを開発者モードに変更する

Windows 10 Mobileの画面で説明します。

f:id:Takyu:20160601223448j:plain
ホーム画面から、ギアアイコンをタップします。


f:id:Takyu:20160601223512j:plain
設定画面が開くので、「更新とセキュリティ」をタップします。


f:id:Takyu:20160601223538j:plain
「開発者向け」をタップします。


f:id:Takyu:20160601223557j:plain
Windows ストアアプリ」から「開発者モード」に変更します。これで、Visual Studioでビルドしたアプリを実機に転送できるようになります。

2-5. Visual Studioを開いてビルドする

下記の Deploy Solutionを選択すると、ビルドして実機に転送してくれます。

f:id:Takyu:20160601230104p:plain


転送が完了すると、このように実機でアプリが実行されます。

f:id:Takyu:20160601230401j:plain

3. Tips

3-1. Windows 10 Mobileでの動作結果

こんな感じです。まだ課題がありそうですね。

・uGUIの標準部品は全て動作した


・Unityのビルド設定でauto rotationモードにすると縦長で固定され、画面の一部が欠ける

f:id:Takyu:20160601230822j:plain

・Unityのビルド設定でlandscape leftにすると、通常の横画面になる

f:id:Takyu:20160601230945j:plain

・Development Buildにチェックをつけると右下に表示が出るが、チェックを付けてなくても表示される(上記スクショ参照)

3-2. スクリーンロック時は実機転送が失敗する

Visual Studioのビルドから、Windows 10 Mobileへの実機転送までは少なくとも数分かかります。

その間にUSBケーブルで接続したWindows 10 Mobileにスクリーンロックがかかると、下記のような画面になり、実機転送が失敗します。

f:id:Takyu:20160601231237j:plain


また、ここのメッセージでは"Continue?"と書いてあるのですが、私の環境ではここで"Yes"を選択しても転送ができませんでした。

そこで、Windows 10 Mobileのロックがかからないようにしてから(不定期にタッチパネルに触れるか、スクリーンロック設定をOFFにする)、Deploy Solutionからやり直しました。

3-3. 今回作ったUWPはWindows10 PCでも動かせる?

ふと気になったので調べてみました。

UWPはappxという拡張子のパッケージですが、Deploy Solution後にVisual Studioのプロジェクトを探してもappxは見つけられませんでした。(探し方が悪い可能性もあります)

ただ、下記のような記事もあるので、少し手間がかかるのかもしれません。ここは時間があればまた調べてみたいと思います。

Windows 10 のユニバーサル Windows アプリをパッケージ化する

4. Windows 10 Mobile (KATARA 01)で動かしてみた感想


1-2で書いたように、Windows 10 Mobileについては発売初期から注目しており、自分なりにUWPアプリ開発を試したこともあります。

これまではUWP関連についてはブログに書いてませんですが、先週のde:code2016に参加して色々と意欲が高まり、今回書いてみました。

残念ながら、私の周辺では、de:codeに参加されていた方を除き、UWPについて知っている人がいない状況です。

とはいえ、これから広まっていく(はずの)HoloLensはUWP標準対応ですし、6/1には、Holographicの技術を3rd Partyに開放するという内容がMicrosoftから発表されました。

blogs.windows.com

これはVRとMRを融合させることにもなりうるので、UWPを見続けることはありかなと思っています。