しっぽを追いかけて

ぐるぐるしながら考えています

Unity と猫の話題が中心   掲載内容は個人の私見であり、所属組織の見解ではありません

Prism for UWP を使いたい

アプリのアイコン類を作るのは結構めんどくさい・・・ですが Microsoftエバンジェリスト高橋忍さんがまた UWP 用のアプリロゴメーカーを作ってくれました

UWP Logo Maker ver.1.0 - 高橋 忍のブログ - Site Home - MSDN Blogs

Andorid や iOS 用に Xamarin 版にもほしい・・・ということでなんとか「UWP」で作れないか試行錯誤しようかと思います

WPF ではなくて UWP で作る・・・ということでアプリフレームワークの Prism を使いたいわけですが、NuGet にはまだ公開されていませんでした

下記の GitHub にはソースが公開されています


さっそくダウンロードして /Source/PrismLibrary_Win10.sln を開いてみると・・・

f:id:matatabi_ux:20150825214148p:plain

アップデートが必要です!

・・・仕方がないので以降の手順を実施

f:id:matatabi_ux:20150825214803p:plain

まずはごそっと Prism.Unity.Windows、Prism.Windows、Prism.Windows.Tests のプロジェクトを削除します

その後、エクスプローラーでソースの Source/Windows10 の場所を開いて

f:id:matatabi_ux:20150825215444p:plain

Prism.Unity.Windows、Prism.Windows をフォルダごと別の場所に移動させておきます

f:id:matatabi_ux:20150825220041p:plain

Visual Studio に戻って元の場所に Prism.Unity.Windows、Prism.Windows を UWP のクラスライブラリプロジェクトとして作り直し

f:id:matatabi_ux:20150825220333p:plain

Class1.cs はいらないので削除

f:id:matatabi_ux:20150825221445p:plain

プロジェクトごとに、bin、obj、Properties フォルダと .csproj 以外のものをドラッグドロップで Visual Studio にコピー

f:id:matatabi_ux:20150825221619p:plain

フォルダ配下のファイルはプロジェクトに含めてくれないのでソリューションエクスプローラーの上の方の「すべて表示」をチェックして丁寧に右クリックメニューでプロジェクトに含めます

f:id:matatabi_ux:20150825221924p:plain

参照を追加するダイアログを開き、Prism.Windows は Prism のプロジェクト参照と、UWP の Windows Desktop Extention と Window Mobile Extention を追加します

f:id:matatabi_ux:20150825222341p:plain

Prism.Unity.Windows の方は Prism と Prism.Windows のプロジェクト参照を追加し、NuGet で Unity パッケージもインストールします

f:id:matatabi_ux:20150825224604p:plain

最後にそれぞれのプロジェクトのビルドプロパティにある「ライブラリレイアウトの生成」にチェックを入れてからソリューションをリビルド!

f:id:matatabi_ux:20150825225341p:plain

これでビルドが通りました

f:id:matatabi_ux:20150825225455p:plain

ビルド後に参照するには、Prism.Unity.Windows の bin/Debug とか bin/Release 配下を参照すれば大丈夫そうです

最後のプロジェクトプロパティの「ライブラリレイアウトの生成」にチェックを入れないと *.rd.xml ファイルが bin 配下に出力されないために参照してもうまくいかないので注意!

UWP からはクラスライブラリも .NET ネイティブ*1コンパイルされるらしく、*.rd.xml を所定の場所に配置しないと参照時にエラーになるようですねNuGet・・・はやく・・・めんどくさい;

*1:このあたりに英文で説明がありました