Kullanırken aramayı duraklatma Oynat/duraklat Bir müzik çalar uygulaması yapıyorum ve her şey yolunda gidiyor. Şu ana kadar sistem müzik çalarım kullanıyorum, ancak şimdi bir uygulama müzik çaları kullanmak yerine geçiş yapmak istiyorum ve bu da sorunlara yol açtığım - hayatım boyunca, benim nasıl elde edeceğimi anlayamıyorum. iOS kontrol merkezinden çağrılmak üzere oynat/duraklat geri arama. İşte benim ana görünümü kumandam kullanıyorum kodu:MPRemoteCommandCenter
override func viewDidLoad() {
super.viewDidLoad()
self.musicPlayer = MPMusicPlayerController.applicationMusicPlayer()
self.registerForMediaPlayerNotifications()
UIApplication.sharedApplication().beginReceivingRemoteControlEvents()
let commandCenter = MPRemoteCommandCenter.sharedCommandCenter()
commandCenter.previousTrackCommand.enabled = false
commandCenter.previousTrackCommand.addTarget(self, action: "previousTrack")
commandCenter.nextTrackCommand.enabled = false
commandCenter.nextTrackCommand.addTarget(self, action: "nextTrack")
commandCenter.togglePlayPauseCommand.enabled = true
commandCenter.togglePlayPauseCommand.addTarget(self, action: "playOrPauseMusic")
commandCenter.pauseCommand.addTarget(self, action: "playOrPauseMusic")
commandCenter.pauseCommand.enabled = true
commandCenter.playCommand.addTarget(self, action: "playOrPauseMusic")
commandCenter.playCommand.enabled = true
[...]
}
func previousTrack() {
}
func nextTrack() {
}
func playOrPauseMusic() {
print("playOrPause")
}
Düşünebildiğim tek şey, geri çekilme geldiğinde nesnesinin artık mevcut olmamasıdır. Nesneyi bir yerlerde saklıyor musunuz? – fishinear
commandCenter nesnesini mi kastediyorsunuz? Hayır, bunu hiçbir yerde saklamıyorum, çünkü sadece hedefleri ayarlamak/devre dışı bırakmak/devre dışı bırakmak vb. Için referansa ihtiyaç duyduğum bir küresel paylaşılmış örnek olacağını düşündüm. Bunu bir deneme olarak verebilirim ... – dflachbart
Hayır, yani Kendini, bu kodu içeren nesne. Temizlenip temizlenmediğini görmek için 'dealloc'una bir sınır koy. – fishinear