2014-03-31 17 views
0

我专门研究Xbox音乐深度和Windows 8音乐播放器,但我认为这是从浏览器到应用程序重定向的更一般问题。 我正在根据这里的指示建立到xbox音乐的深层链接:http://msdn.microsoft.com/en-us/library/dn546675.aspx 当我点击一个这样的链接:http://music.xbox.com/Track/768E1306-0100-11DB-89CA-0019B92A3933?action=play我期望如果我在Windows 8上安装了音乐应用程序,它会去他们而不是浏览器(或它将重定向)。至少我希望每次点击链接时都能打开到相同的浏览器窗口。它看起来像iTunes通过在链接中使用target =“itunes_store”(它在浏览器中打开,但然后要求打开iTunes应用程序)做了更接近我想要的内容,但我没有看到任何类似的Xbox文档音乐。Xbox音乐深层链接可以重定向到Windows 8音乐播放器吗?

这里是我所看到的:

我可以粘贴类似上面进入IE浏览器的地址栏(无论是台式机或win8的应用程序)的链接,它会问我,如果我想打开音乐应用程序,如果我点击另一个Windows8应用程序(如邮件应用程序)中的链接,或者如果我从我自己的Windows 8应用程序中使用Windows.System.Launcher.LaunchUriAsync启动,这也适用。

但是,如果我点击网页中的相同链接,则会弹出带有“Try Xbox Music”横幅的Web版Xbox音乐,然后我可以点击该标题将其带到Windows 8应用程序。此时,IE似乎缓存了一些状态,因为我点击的任何后续链接都会直接进入网络版本,而不会显示横幅,并且粘贴到地址栏或从另一个winodows8应用程序启动,现在可以将我带到Web版本。关闭浏览器的所有实例都会让我回到原始状态。

网络版的Xbox音乐应用程序非常漂亮,但我想了解如何尽可能使应用程序版本始终如一地打开。链接到在Windows 8应用程序中打开的内容是否有不同的协议?是否有一个原因,我得到一个不同的行为,从一个链接输入到IE的地址栏中,而点击一个具有相同URL的链接(我使用目标选项进行播放,但没有找到一个让我收到消息的链接打开应用程序)。

回答

1

该链接适用于我在Windows 8上的罚款。你确定你的应用程序安装正确吗?您可以尝试使用按钮并调用Windows.System.Launcher.LaunchUriAsync(new Uri(yourUrl));而不是将其放入浏览器中,您可以尝试使用按钮并调用Windows.System.Launcher.LaunchUriAsync(new Uri(yourUrl));

或者,您可以尝试在NuGet上使用我的Xbox.Music库(http://www.nuget.org/packages/xbox.music),因为我认为它会为您处理此问题。

HTH!

+0

感谢。根据你的意见,我更新了原来的问题。我一直认为我看到的不同行为是基于我如何进入链接,但似乎还有其他更多的随机发生。当你说它工作正常时,它是否会直接将您带入内置的音乐应用程序?我已经重置了文件关联,并且在一台干净的笔记本电脑上试了一下,我认为我从来没有见过这种行为。 –

+0

当你说你在一台“干净的笔记本电脑”上试过它时,是否打开了它并在点击链接之前使用了内置的音乐应用程序? – AdvancedREI

+0

我在初次使用内置音乐应用程序之前和之后都尝试过。在这个例子中,我的意思是'干净',这意味着我没有通过浏览器登录到Xbox音乐,也没有弄乱任何文件/协议关联。 –