【问题标题】:Swift MPRemoteCommandCenter nextTrackCommand gets called 3 timesSwift MPRemoteCommandCenter nextTrackCommand 被调用 3 次
【发布时间】:2019-07-20 20:02:22
【问题描述】:

我正在使用 MPRemoteCommandCenter 更改我的音乐广播应用程序中的歌曲。但是当我从锁定屏幕按下下一曲目按钮时,它会跳出 3 步。

这是我的代码:

func setupRemoteTransportControls() {
        let commandCenter = MPRemoteCommandCenter.shared()

        commandCenter.nextTrackCommand.addTarget { [unowned self]     event in
        print("Next")
        self.stationIndex = (self.stationIndex+1)
        self.currentStation = self.stations[self.stationIndex]
            return .success
        }
}

输出是: 下一个 下一个 下一个

但我只按了一次按钮。我该怎么做才能只输出一次 3 次?

【问题讨论】:

  • setupRemoteTransportControls 本身是否有可能被多次调用?
  • 谢谢,没错。
  • 酷,我会给出答案。

标签: swift xcode avplayer mpremotecommandcenter


【解决方案1】:

问题可能是您多次调用setupRemoteTransportControls。每次执行此操作时,您都调用commandCenter.nextTrackCommand.addTarget 并设置一个新的操作-目标对(不删除现有的)。因此,当用户按下按钮时,所有这些对都会触发。

【讨论】:

  • 你好马特,如果我只在我的 homeController 中提到 setupRemoteTransportControls 那么它适用于所有视图控制器?
猜你喜欢
  • 2018-09-15
  • 1970-01-01
  • 2016-07-02
  • 2016-07-06
  • 2017-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-03
相关资源
最近更新 更多