かずきのBlog@hatena

日本マイクロソフトに勤めています。このブログは個人ブログなので、ここに書いている内容は個人的な意見で会社の公式見解ではない点にご注意ください。好きなものは XAML と C# 。苦手なものは型の無い言語です。

UWP版Prismを使うとリリースビルド時にアプリが落ちる #windev_jp

という状況です。原因は端的にいうとこれです。

blog.okazuki.jp

https://connect.microsoft.com/VisualStudio/feedback/details/1925435/-windows-10-pcl-uwp-nullreferenceexception

別にPrismが悪いというわけではなくUWPからPCLを使うと起きる可能性があります。 Prismの処理を追っていくと、Prismが内部で起動シーケンスの進捗報告をしてるログ出力で、上記の原因に該当してました。

回避方法はLoggerを差し替えることです。 とりあえずログがいらないならAppクラスで以下の対応をすればOKです。

protected override ILogger CreateLogger()
{
    return new EmptyLogger();
}

参ったものですね。個人的には.NET Nativeのバグだと思ってます。