Windows phone 7 从通用音量控制检测应用程序启动

Windows phone 7 从通用音量控制检测应用程序启动,windows-phone-7,deep-linking,windows-phone-7.1,background-agents,universal-volume-control,Windows Phone 7,Deep Linking,Windows Phone 7.1,Background Agents,Universal Volume Control,我有一个应用程序,目标是mango设备,它通过BackgroundAudioAgent播放音乐。因此,它集成了通用音量控制(UVC) 有没有办法通过点击UVC中的艺术家详细信息来检测应用程序何时启动 或者,是否有方法设置UVC要使用的深度链接 我希望这样,当应用程序通过UVC启动时,我可以将用户带到“正在播放”页面,而不是主页 更新 这也会影响从音乐和视频中心中正在播放的互动程序启动应用程序,因为BackgroundAudioPlayer会自动与中心的这一部分集成。使用MediaHistoryZ

我有一个应用程序,目标是mango设备,它通过BackgroundAudioAgent播放音乐。因此,它集成了通用音量控制(UVC)

有没有办法通过点击UVC中的艺术家详细信息来检测应用程序何时启动

或者,是否有方法设置UVC要使用的深度链接

我希望这样,当应用程序通过UVC启动时,我可以将用户带到“正在播放”页面,而不是主页

更新

这也会影响从音乐和视频中心中正在播放的互动程序启动应用程序,因为BackgroundAudioPlayer会自动与中心的这一部分集成。

使用
MediaHistory
Zune中心集成解决了此问题。它还通过了RC SDK中的市场测试工具包功能测试步骤,这是一个好迹象

如果从MSDN上的示例开始,从后台音频代理中的
GetNextTrack()
GetPreviousTrack()
调用以下代码,意味着当您单击正在播放的UVC或Zune时,可以返回您在此处指定的导航查询字符串

    private AudioTrack ChangeTrack()
    {
        AudioTrack track = _playList[currentTrackNumber];

        IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication();
        Stream s = isoStore.OpenFile("ApplicationIcon.png", FileMode.Open);

        MediaHistoryItem nowPlaying = new MediaHistoryItem();
        nowPlaying.Title = "Background Audio is playing!";
        nowPlaying.ImageStream = s;
        nowPlaying.PlayerContext.Add("keyString", track.Title);
        MediaHistory.Instance.NowPlaying = nowPlaying;

        return track;
    }

通常在MediaHistoryItem中指定导航URI,但我不确定这是否与您的问题相关。但如果是,您可以让它传递不同的uri,就像在创建活动互动程序时一样。@Claus后台代理与中心集成,而不需要指定任何内容。这就是问题所在。你有没有在应用程序运行时让它工作过?(为交叉升级道歉)谢谢保罗。知道这一点很好,但令人失望的是BAP实现了用户必须覆盖才能在市场上被接受的功能。我假设是PlayerContext字典序列化到导航uri上,是吗?