2015年7月20日月曜日

Windows / Windows Phone ストアへのリンクが動作しなくなっている件(修正されたようです)

(7/21朝更新: 現在、正しくストアへのリンクが動作していることを確認しました。リダイレクトの問題は修正されたようです。)


私の気付いている範囲では、7/17(金)よりWindows ストア・Windows Phone ストア へのURL リンクが動作しなくなっているようです。

具体例を挙げると、
Windows ストア へのリンク (Win8形式、例:PICT8)
http://apps.microsoft.com/windows/app/04366e7f-e3f2-4dd8-aa4b-629223935359

Windows ストア へのリンク (Win10形式、例:PICT8 *1)
https://www.microsoft.com/store/apps/9WZDNCRDHM4C

Windows Phone ストアへのリンク (例:WiFiSD8)
http://windowsphone.com/s?appid=0c242c2c-5c7a-4498-9999-118b116b162a

これらのURLを開こうとすると、関係の無い「マイクロソフト ストア」へリダイレクトされてしまいます。
検索で見つかる他のアプリも軒並み同じページへ飛ばされるようです。

「マイクロソフト ストア」

現状、回避策としては…ブラウザの言語設定を英語に変更する ことで、正しくストアのサイトにリダイレクトされるようです。
ただ、普段使いのブラウザで英語に設定といわれても…中々現実的な回避策とは言いづらい処です。

ちなみに7月18日(金)は、Windows 10用のストア、のWeb版が公開になった日でもあります。このタイミングでリダイレクト設定がおかしくなったのかもしれません。

Apps on Windows
https://www.microsoft.com/en-us/store/apps/

Windows 10 用のストア Web版
Windows / Phone アプリが一つにまとまっています

なお、この新ストアからアプリをクリックすると正しいページに飛びます。
見たところ、ダッシュボードそのままのURLではダメで、URLで明示的にen-usを指定すると日本語設定ブラウザでもアプリページが表示されるようです。

日本語設定ブラウザでも動く形式
https://www.microsoft.com/en-us/store/apps/PICT8/9WZDNCRDHM4C

困ったことに日本語の説明ページに飛ぶにはやはり日本語設定ブラウザではダメで、英語設定にする必要があります(ややこしい)
https://www.microsoft.com/ja-jp/store/apps/PICT8/9WZDNCRDHM4C






(*1) Win10 形式のアプリケーション URLは、新しい統合版ダッシュボードの各アプリページ → App Management → App Identity から確認できます。


2015年7月9日木曜日

Win10 UWP でのデバイスベンダ名・モデル名の取得

[2016/01/11追記] その後このEasClientDeviceInformation、めでたくUniversalApiContractに復帰したようです。最新のドキュメントにはそう書いてあり、Desktop・Mobile実機両方で動作を確認できました。
以下は2015年7月当時の文章です。


-----


StoreAppでデバイスのベンダ・モデル名を取得する場合、Win8.1/WP8.1 までは"EasClientDeviceInformation" Classを使う事ができました。

EasClientDeviceInformation class
https://msdn.microsoft.com/en-US/library/windows/apps/windows.security.exchangeactivesyncprovisioning.easclientdeviceinformation.aspx

ところが…Win10 UWPになると、このNamespaceはUniversalApiContract…UWP Appなら誰でも使えるAPI、では無く、「Desktop」デバイスファミリ…つまりPC・タブ等の所謂PC系でしか使えなくなってしまいました。電話はどうすれば。

※4月くらいのSDKではUniversalApiContractに含まれてたと思うんですけどね。いつのまにかお引越ししてしまった。

うそーん

困ったナーとMSDN Forumを見ていたら、何か凄い方法で取得しているというPostがありました。HALのPnpObjectからDeviceClassのUUIDで舐めて無理くり取得するという。すげえ。

SystemInfoHelper.cs
https://gist.github.com/HamGuy/8294463

以下、手持ちのデバイスで取得してみた例です。ちゃんと取得できているようです。


ThinkPad X200 / Win10 / UWP Appでの取得例

ONDA V891w / Win10 / UWP Appでの取得例

SurfaceRT / Windows RT 8.1 / Win8.1 StoreAppでの取得例

MADOSMA / WP8.1 / WP8.1 StoreApp での取得例

Lumia520 / Win10 Mobile / UWP Appでの取得例


Lumia520 / Win10 Mobile / WP8.1 StoreAppでの取得例