我有一个 WKWebView ,我正在检查音频是否正在播放
[[AVAudioSession sharedInstance] isOtherAudioPlaying]
我尝试使用以下方式获取有关它的信息:
[MPNowPlayingInfoCenter defaultCenter] nowPlayingInfo]
但它没有。
然后我尝试了:
[[MPMusicPlayerController systemMusicPlayer] nowPlayingItem]
并且它也是零。
如何获取当前播放音频的网址?
答案 0 :(得分:1)
您需要订阅通知:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playerItemBecameCurrent:)
name:@"AVPlayerItemBecameCurrentNotification"
object:nil];
然后在方法playerItemBecameCurrent
-(void)playerItemBecameCurrent:(NSNotification*)notification {
AVPlayerItem *playerItem = [notification object];
if(playerItem == nil) return;
// Break down the AVPlayerItem to get to the path
AVURLAsset *asset = (AVURLAsset*)[playerItem asset];
NSURL *url = [asset URL];
NSString *path = [url absoluteString];}
答案 1 :(得分:0)
由于您已经可以检测到播放音频的时间,我认为您的解决方案是从 WKNavigationDelegate 实施 decisionPolicyForNavigationAction 方法。
您可以组合此委托方法提供的信息,只要点击与您已经完成的音频检测相关联的链接,就会调用该信息。