iOS实现获取系统iTunes音乐的方法示例

2020-01-21 02:11:53于海丽

播放音乐库中的音乐

音乐是iOS的重要组成播放,无论是iPod、iTouch、iPhone还是iPad都可以在iTunes购买音乐或添加本地音乐到音乐库中同步到你的iOS设备。 本文将给大家详细介绍关于iOS获取系统iTunes音乐的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

首先来看看效果图

ios,获取itunes音乐,播放,itunes音乐,获取系统音乐

简介

获取类型iTune音乐非常类似于UIKit框架中UIImagePickerController图片选取器的用法,既可以直接使用系统自带的媒体选择器也可以只获取系统的数据加载到自定义界面中

与UIImagePickerController不同的是,MPMediaPickerController媒体选择器是放在<MediaPlayer/MediaPlayer.h>框架中的

MPMediaPickerController 简介

MPMediaPickerController 与 UIImagePickerController 类似,允许用户从音乐库中选取音乐、播客、音频书。 

一、创建


MPMediaPickerController *mpc = [[MPMediaPickerControlleralloc]initWithMediaTypes:MPMediaTypeMusic]; 
  mpc.delegate = self;//委托 
  mpc.prompt =@"Please select a music";//提示文字 
  mpc.allowsPickingMultipleItems=NO;//是否允许一次选择多个 

上述代码创建了一个 MPMediaPickerController 并设置了相关属性。其中初始化的时候有一个参数是媒体类型,媒体类型可以是下面这些值:


enum { 
  // audio 
  MPMediaTypeMusic    = 1 << 0, 
  MPMediaTypePodcast   = 1 << 1, 
  MPMediaTypeAudioBook  = 1 << 2, 
  MPMediaTypeAudioITunesU = 1 << 3, // available in iOS 5.0 
  MPMediaTypeAnyAudio   = 0x00ff, 
   
  // video (available in iOS 5.0) 
  MPMediaTypeMovie    = 1 << 8, 
  MPMediaTypeTVShow    = 1 << 9, 
  MPMediaTypeVideoPodcast = 1 << 10, 
  MPMediaTypeMusicVideo  = 1 << 11, 
  MPMediaTypeVideoITunesU = 1 << 12, 
  MPMediaTypeAnyVideo   = 0xff00, 
   
  MPMediaTypeAny     = ~0 
}; 
typedef NSInteger MPMediaType; 

二、委托函数


- (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection{ 
  /*insert your code*/ 
  for ( MPMediaItem* itemin [mediaItemCollection items]) { 
  } 
  [selfdismissModalViewControllerAnimated:YES]; 
  [mediaPicker release]; 
} 

在上面这个函数里你可以处理所选取的内容。下面这个函数负责处理选中后取消的动作:


-(void)mediaPickerDidCancel:(MPMediaPickerController *)mediaPicker{ 
  /*insert your code*/ 
  [selfdismissModalViewControllerAnimated:YES]; 
  [mediaPicker release]; 
}