我正在xamarin中使用plugin在iOS和Android设备上播放歌曲,效果很好。我的问题是我找不到在控制中心收听下一个和上一个按钮的方法。

ios - Xamarin表单在后台播放歌曲时接收控制中心事件-LMLPHP

我已阅读blog供参考,但似乎没有提供足够的信息来实现解决方案。

最佳答案

您可以在README.md中找到相关信息。


  • 如果要启用RemoteControl功能,则必须
    覆盖UIApplication.RemoteControlReceived(UIEvent)并转发
    事件到
    MediaManagerImplementation.MediaRemoteControl.RemoteControlReceived(UIEvent) 方法。有关更多详细信息,请参见示例应用程序。


  • 按着这些次序:
  • 创建一个从UIApplication继承的SampleApplication类,以将RemoteControlReceived(UIEvent)实现为其sample code,如下所示:
    using Foundation;
    using Plugin.MediaManager;
    using UIKit;
    
    namespace MediaSample.iOS
    {
        [Register("SampleApplication")]
        public class SampleApplication: UIApplication
        {
            private MediaManagerImplementation MediaManager => (MediaManagerImplementation) CrossMediaManager.Current;
    
            public override void RemoteControlReceived(UIEvent uiEvent)
            {
               MediaManager.MediaRemoteControl.RemoteControlReceived(uiEvent);
            }
        }
    }
    
    MediaManager.MediaRemoteControl.RemoteControlReceived(uiEvent)可帮助您处理下一个/上一个/暂停/播放事件。要查看其工作原理,可以引用here
  • 请勿将SampleApplication添加到Main.cs中的UIApplication.Main()中,如下所示:
     UIApplication.Main(args, "SampleApplication", "AppDelegate");
    
  • 关于ios - Xamarin表单在后台播放歌曲时接收控制中心事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46194229/

    10-13 07:43