[英]Mute My App When Other Apps are Playing Music in Swift
我正在编写一个播放音乐的应用程序。 但是,我希望这样做,以便在播放其他音乐(例如iTunes中的音乐)时暂停我的应用程序的音乐。 我将如何完成? 这是我的代码:
var alertSound = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("Ambler", ofType: "mp3")!)
// Removed deprecated use of AVAudioSessionDelegate protocol
AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryAmbient, error: nil)
AVAudioSession.sharedInstance().setActive(true, error: nil)
var error:NSError?
audioPlayer = AVAudioPlayer(contentsOfURL: alertSound, error: &error)
audioPlayer.prepareToPlay()
audioPlayer.play()
audioPlayer.numberOfLoops = -1
为此,我相信您需要检查音乐播放器是否正在播放,这是我在Objective-C中的处理方法。
首先#import <MediaPlayer/MediaPlayer.h>
并将库添加到构建阶段。
- (BOOL)isPlaying
{
MPMusicPlayerController *musicPlayer = [MPMusicPlayerController systemMusicPlayer];
if (musicPlayer.playbackState == MPMusicPlaybackStatePlaying) {
return YES;
}
return NO;
}
初始化musicPlayer
它可能会导致音乐停止播放,如果这样的话,我会调查一下
+ (MPMusicPlayerController *)applicationMusicPlayer
迅速
func isPlaying() -> Bool {
let musicPlayer = MPMusicPlayerController.systemMusicPlayer()
if musicPlayer.playbackState == MPMusicPlaybackState.Playing {
return true
}
return false
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.