【问题标题】:Displaying AVAudio player duration and elapsed time on iPad lock screen (background)在 iPad 锁定屏幕(背景)上显示 AVAudioplayer 持续时间和经过时间
【发布时间】:2015-03-29 05:47:02
【问题描述】:

到目前为止,这是我尝试让锁定屏幕显示音频 mp3 文件已经过去(经过)多少时间以及音频 mp3 文件总共有多少时间......

这是我的对象数组:

NSArray *madMoneyArray = [NSArray arrayWithObjects:[NSString stringWithFormat:@"Episode %d", a],
                              @"Jim Cramer",
                              @"Mad Money Podcast",
                              madMoneyArtwork,
                              [NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime],
                              [NSNumber numberWithDouble:(double)_audioPlayer.duration],
                              [NSNumber numberWithDouble:(double)1.0],
                              @"MadMoneyPodcast.png",
                              madMoneyURL, nil];

这是我的键数组:

NSArray *array = [NSArray arrayWithObjects:MPMediaItemPropertyTitle,
                  MPMediaItemPropertyArtist,
                  MPMediaItemPropertyAlbumTitle,
                  MPMediaItemPropertyArtwork,
                  MPNowPlayingInfoPropertyElapsedPlaybackTime,
                  MPMediaItemPropertyPlaybackDuration,
                  MPNowPlayingInfoPropertyPlaybackRate, nil];

我成功地将对象及其键放入 MPNowPlayingInfoCenter defaultCenter 中:

songInfo = [NSDictionary dictionaryWithObjects:[[_podcastArray objectAtIndex:(value - 1)] subarrayWithRange:NSMakeRange(0, imageIndex)] forKeys:_keys];
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];

播客数组是我保存多个包含这些对象和键的数组的地方。现在,当我进入锁定屏幕时,会显示我想要显示的所有内容(即:标题、艺术家姓名、专辑名称、专辑插图)。但是,我无法显示的一件事是愚蠢的经过时间和持续时间。

我做了很多研究并实施了我认为正确的事情,但显然它不正确/有效。

我真的可以在这里得到一些帮助,谢谢。

【问题讨论】:

    标签: ios xcode avaudioplayer mpnowplayinginfocenter


    【解决方案1】:

    尝试替换

    [NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime]
    

    [NSNumber numberWithDouble:_audioPlayer.currentPlaybackTime]
    

    还要检查 _audioPlayer.duration 是否不为 0。

    【讨论】:

      【解决方案2】:

      你的 ma​​dMoneyArray 有一些额外的值用这个替换这个数组

      NSArray *madMoneyArray = [NSArray arrayWithObjects:[NSString stringWithFormat:@"Episode %d", a],
                                    @"Jim Cramer",
                                    @"Mad Money Podcast",
                                    madMoneyArtwork,
                                    [NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime],
                                    [NSNumber numberWithDouble:(double)_audioPlayer.duration],
                                   [NSNumber numberWithInt:1],
                                   nil];
      

      试试这个,希望对你有帮助!!!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-12-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多