我想为 Windows 10 开发一个音乐应用程序,我对音量栏旁边的 Groove Music 提供的界面很好奇。我已经尝试使用谷歌搜索来获取有关它的更多信息,但我没有取得任何成功。当我在 Groove Music 中播放音乐并提高或降低音量时,当前歌曲的名称以及艺术家和专辑插图会与音量指示器旁边的音乐控件一起显示:
我想知道如何在我自己的应用程序中创建此对话框以及我必须研究哪些 Windows API。
最佳答案
尽管 @Stamos 已经给出了很好的答案,但我还是要添加我的意见,因为我发现实际上可以从 native Windows 应用程序(不仅是通用应用程序)使用 SystemMediaTransportControls
。
首先,它仍然需要引用通用 winmd
文件,因此它只能在 Win10 上运行。它们将位于 10 sdk 中,您可以通过常规的 Add Reference -> Browse
添加它们,但您可能需要将对话框右下角的过滤器更改为“所有文件”他们出现。它们位于我的电脑上:
Windows.Foundation.UniversalApiContract
:
C:\Program Files (x86)\Windows Kits\10\References\Windows.Foundation.UniversalApiContract\1.0.0.0\Windows.Foundation。 UniversalApiContract.winmdWindows.Foundation.FoundationContract
:
C:\Program Files (x86)\Windows Kits\10\References\Windows.Foundation.FoundationContract\2.0.0.0\Windows.Foundation。 FoundationContract.winmd
获得必要的引用后,您会遇到另一个问题 - 您无法通过通常的 SystemMediaTransportControls.GetForCurrentView();
访问传输控件(它会抛出异常)因为您实际上并没有普遍的看法。使用以下方法可以缓解这种情况:
SystemMediaTransportControls systemControls =
BackgroundMediaPlayer.Current.SystemMediaTransportControls;
在此之后,您可以随意使用任何在线示例或 Stamos 的答案。
关于c# - 与 "system-wide"媒体播放器交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31464317/