MPMusicPlayerController在iPod 5g上运行正常吗?

时间:2013-04-07 00:06:44

标签: ios mpmusicplayercontroller

我正在开发一个适用于iOS的应用程序,它可以在两种不同的模式下工作,其中一种模式播放iPod库中的音乐,另一种模式合成声音(例如:纯音)。

为了合成声音我使用音频单元,所以通过它的回调我可以传递所需的信号。至于声音必须以特定音量播放,我使用iPodMusicPlayer设置设备音量。

我看到的问题是,打开iPod Touch 5g后第一次运行应用程序,一旦iPodMusicPlayer用于设置设备的音量,applicationMusicPlayer将不会响应停止。

我想出了以下代码。打开后在iPod Touch 5g上运行它,触摸停止后音乐不会停止。

@implementation ViewController

- (void)viewDidLoad
{
   [super viewDidLoad];

   MPMusicPlayerController *mp = [MPMusicPlayerController iPodMusicPlayer];
   mp.volume = 0.3;
}

- (void)didReceiveMemoryWarning
{
   [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)playAction:(id)sender {
   MPMusicPlayerController *mp = [MPMusicPlayerController applicationMusicPlayer];
   MPMediaQuery *query = [MPMediaQuery songsQuery];
   [mp setQueueWithQuery:query];
   [mp play];
}

- (IBAction)stopAction:(id)sender {
   MPMusicPlayerController *mp = [MPMusicPlayerController applicationMusicPlayer];
   [mp stop];
}

@end

PS:也可以通过输入音乐应用程序,退出它(双按主页按钮并退出多任务栏中的音乐)重现问题,最后运行上面的代码。

到目前为止我测试的其他设备(iPad第2代和第3代,iPod Touch 4代)中,该应用程序运行良好。

提前致谢。

0 个答案:

没有答案