1

我正在潜入 iOS 开发,并一直在慢慢构建自己的闹钟应用程序来学习如何在平台上进行开发。我希望我的闹钟允许我在我的 iOS 设备上显示歌曲列表,只选择一首,并在闹钟响起时播放。我已经弄清楚如何使用MPMediaPicker来显示歌曲列表并允许用户选择最终添加到MPMediaItemCollection用于告诉 MPMediaPlayer 对象播放哪些歌曲的歌曲。这是所有这些的代码...

- (IBAction) selectSong: (id) sender {  
MPMediaPickerController *picker =
[[MPMediaPickerController alloc] initWithMediaTypes: MPMediaTypeMusic];

picker.delegate                                         = self;
picker.allowsPickingMultipleItems       = NO;
picker.prompt                                           = NSLocalizedString (@"Select any song from the list", @"Prompt to user to choose some songs to play");

[self presentModalViewController: picker animated: YES];
[picker release]; }

存储歌曲...

- (void) mediaPicker: (MPMediaPickerController *) mediaPicker didPickMediaItems: (MPMediaItemCollection *) mediaItemCollection {

[self dismissModalViewControllerAnimated: YES];
selectedSongCollection=mediaItemCollection; }

关闭选择器...

- (void) mediaPickerDidCancel: (MPMediaPickerController *) mediaPicker {

[self dismissModalViewControllerAnimated: YES]; }

现在,此代码允许您选择一首歌曲并在应用程序运行时随时播放。我的问题是...

  1. 如何将该歌曲信息存储在userInfo作为本地通知的一部分包含在表示我的警报被触发的字典中?
  2. 我的另一个问题是,一旦我能够从本地通知中检索该歌曲信息,我该如何播放它?

我对这一切都很陌生,以至于我真的很难理解这是如何工作的。非常感谢您的帮助!

4