ユニバーサル Windows アプリの実行時にプラットフォームがWindowsなのかWindows Phoneなのかを判別するには？


※ そのものズバリな API ではないので、情報を共有します。

Windows 8.1 と Windows Phone 8.1 に対応したユニバーサル Windows
アプリを開発する際に、現在利用されているプラットフォームを実行時に判別してロジックを分けたいと思います。
MSDNを見ても、それっぽいAPIが見当たりません。実現方法はありますか？




Windows.Security.ExchangeActiveSyncProvisioning.EasClientDeviceInformation
クラスを使います。次のコードで、実行中のプラットフォームが WindowsPhone であるか、そうでない(Windows)なのかがわかります。

C# で書いていますが、C++, Visual Basic, JavaScript からも同じ API を利用できます。

[code]

        bool DetectIfRunningOnWindowsPhone()
        {
            var info = new Windows.Security.ExchangeActiveSyncProvisioning.EasClientDeviceInformation();
            return (info.OperatingSystem.Equals("WindowsPhone")) ? true : false;
        }
    
[/code]

<http://msdn.microsoft.com/ja-
jp/library/windows/apps/windows.security.exchangeactivesyncprovisioning.easclientdeviceinformation.aspx>
も併せてご覧ください。

