日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

01-iOS获取系统iTunes音乐

發布時間:2024/9/30 windows 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 01-iOS获取系统iTunes音乐 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

iOS獲取系統iTunes音樂

  • 1.1-簡介
  • 1.2-使用系統自帶的控制器選擇iTunes歌曲
  • 1.3-只獲取iTunes中的數據,自定義界面
  • 1.4—完整代碼

1.1-簡介

  • 獲取類型iTune音樂非常類似于UIKit框架中UIImagePickerController圖片選取器的用法,既可以直接使用系統自帶的媒體選擇器也可以只獲取系統的數據加載到自定義界面中

  • 與UIImagePickerController不同的是,MPMediaPickerController媒體選擇器是放在<MediaPlayer/MediaPlayer.h>框架中的

1.2-使用系統自帶的控制器選擇iTunes歌曲

#pragma mark -使用系統自帶的控制器- (void)presentiTunesMediaPickerController {//1.創建媒體選擇器/**MPMediaType(大概有13種,這里只列出比較常用的幾種)MPMediaTypeMusic:音樂歌曲MPMediaTypePodcast:博客(有聲雜志)MPMediaTypeAudioITunesU:iTuneU中的有聲讀物MPMediaTypeMovie:電影*/MPMediaPickerController *controller = [[MPMediaPickerController alloc] initWithMediaTypes:MPMediaTypeMusic];//2.是否支持多選,默認為nocontroller.allowsPickingMultipleItems = YES;//在導航欄的上方添加一個提示文本controller.prompt = @"傳智播客-黑馬程序員";//3.設置代理(代理比較簡單,只有兩個方法,完成選取和取消選取)controller.delegate = self;//4.彈出媒體選擇器[self presentViewController:controller animated:YES completion:nil]; }
  • MPMediaPickerControllerDelegate代理
#pragma mark -MPMediaPickerControllerDelegate//完成選取 - (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection {for (MPMediaItem *song in mediaItemCollection.items) {//解析數據[self resolverMediaItem:song];}//解除媒體選擇器器[mediaPicker dismissViewControllerAnimated:YES completion:nil]; }//取消選取 - (void)mediaPickerDidCancel:(MPMediaPickerController *)mediaPicker {//解除媒體選擇器器[mediaPicker dismissViewControllerAnimated:YES completion:nil]; }
  • 解析iTunes歌曲數據
#pragma mark -解析iTune音樂數據 - (void)resolverMediaItem:(MPMediaItem *)song {//歌名NSString *name = [song valueForProperty: MPMediaItemPropertyTitle];//歌曲路徑NSString *url = [song valueForProperty: MPMediaItemPropertyAssetURL];//歌手名字NSString *songer = [song valueForProperty: MPMediaItemPropertyArtist];//歌曲時長(單位:秒)NSTimeInterval INW = [[song valueForProperty: MPMediaItemPropertyPlaybackDuration] doubleValue];NSString *time;if((int)INW%60<10){time = [NSString stringWithFormat:@"%d:0%d",(int)INW/60,(int)INW%60];}else{time = [NSString stringWithFormat:@"%d:%d",(int)INW/60,(int)INW%60];}if(songer == nil){songer = @"未知歌手";}//歌曲插圖(如果沒有插圖,則返回nil)MPMediaItemArtwork *artwork = [song valueForProperty: MPMediaItemPropertyArtwork];//從插圖中獲取圖像,參數size是圖像的大小UIImage *image = [artwork imageWithSize:CGSizeMake(50, 50)];self.label.text = [NSString stringWithFormat:@"歌名:%@ \n 歌曲路徑:%@ \n 歌手名字:%@ \n 歌曲時長%@ \n 歌曲插圖:%@",name,url,songer,time,image]; }

1.3-只獲取iTunes中的數據,自定義界面

  • 解析數組的操作與使用系統自帶控制器的方式一致
// 1.創建媒體選擇隊列(從ipod庫中讀出音樂文件)MPMediaQuery *everything = [[MPMediaQuery alloc] init];// 2.創建讀取條件(類似于對數據做一個篩選) Value:作用等同于MPMediaType枚舉值MPMediaPropertyPredicate *albumNamePredicate =[MPMediaPropertyPredicate predicateWithValue:[NSNumber numberWithInt:MPMediaTypeMusic ] forProperty: MPMediaItemPropertyMediaType];//3.給隊列添加讀取條件[everything addFilterPredicate:albumNamePredicate];//4.從隊列中獲取符合條件的數組集合NSArray *itemsFromGenericQuery = [everything items];//5.便利解析數據for (MPMediaItem *song in itemsFromGenericQuery) {[self resolverMediaItem:song];}

1.4—完整代碼

#import "ViewController.h"#import <MediaPlayer/MediaPlayer.h> #import <CoreFoundation/CoreFoundation.h> @interface ViewController ()<MPMediaPickerControllerDelegate> @property (weak, nonatomic) IBOutlet UILabel *label;@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib. }- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {[self presentiTunesMediaPickerController]; }#pragma mark -使用系統自帶的控制器- (void)presentiTunesMediaPickerController {//1.創建媒體選擇器/**MPMediaType(大概有13種,這里只列出比較常用的幾種)MPMediaTypeMusic:音樂歌曲MPMediaTypePodcast:博客(有聲雜志)MPMediaTypeAudioITunesU:iTuneU中的有聲讀物MPMediaTypeMovie:電影*/MPMediaPickerController *controller = [[MPMediaPickerController alloc] initWithMediaTypes:MPMediaTypeMusic];//2.是否支持多選,默認為nocontroller.allowsPickingMultipleItems = YES;//在導航欄的上方添加一個提示文本controller.prompt = @"傳智播客-黑馬程序員";//3.設置代理(代理比較簡單,只有兩個方法,完成選取和取消選取)controller.delegate = self;//4.彈出媒體選擇器[self presentViewController:controller animated:YES completion:nil]; }#pragma mark -只獲取iTunes中的數據,界面自定義 - (void)getiTuneLibrary {// 1.創建媒體選擇隊列(從ipod庫中讀出音樂文件)MPMediaQuery *everything = [[MPMediaQuery alloc] init];// 2.創建讀取條件(類似于對數據做一個篩選) Value:作用等同于MPMediaType枚舉值MPMediaPropertyPredicate *albumNamePredicate =[MPMediaPropertyPredicate predicateWithValue:[NSNumber numberWithInt:MPMediaTypeMusic ] forProperty: MPMediaItemPropertyMediaType];//3.給隊列添加讀取條件[everything addFilterPredicate:albumNamePredicate];//4.從隊列中獲取符合條件的數組集合NSArray *itemsFromGenericQuery = [everything items];//5.便利解析數據for (MPMediaItem *song in itemsFromGenericQuery) {[self resolverMediaItem:song];} }#pragma mark -解析iTune音樂數據 - (void)resolverMediaItem:(MPMediaItem *)song {//歌名NSString *name = [song valueForProperty: MPMediaItemPropertyTitle];//歌曲路徑NSString *url = [song valueForProperty: MPMediaItemPropertyAssetURL];//歌手名字NSString *songer = [song valueForProperty: MPMediaItemPropertyArtist];//歌曲時長(單位:秒)NSTimeInterval INW = [[song valueForProperty: MPMediaItemPropertyPlaybackDuration] doubleValue];NSString *time;if((int)INW%60<10){time = [NSString stringWithFormat:@"%d:0%d",(int)INW/60,(int)INW%60];}else{time = [NSString stringWithFormat:@"%d:%d",(int)INW/60,(int)INW%60];}if(songer == nil){songer = @"未知歌手";}//歌曲插圖(如果沒有插圖,則返回nil)MPMediaItemArtwork *artwork = [song valueForProperty: MPMediaItemPropertyArtwork];//從插圖中獲取圖像,參數size是圖像的大小UIImage *image = [artwork imageWithSize:CGSizeMake(50, 50)];self.label.text = [NSString stringWithFormat:@"歌名:%@ \n 歌曲路徑:%@ \n 歌手名字:%@ \n 歌曲時長%@ \n 歌曲插圖:%@",name,url,songer,time,image]; }#pragma mark -MPMediaPickerControllerDelegate//完成選取 - (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection {for (MPMediaItem *song in mediaItemCollection.items) {//解析數據[self resolverMediaItem:song];}//解除媒體選擇器器[mediaPicker dismissViewControllerAnimated:YES completion:nil]; }//取消選取 - (void)mediaPickerDidCancel:(MPMediaPickerController *)mediaPicker {//解除媒體選擇器器[mediaPicker dismissViewControllerAnimated:YES completion:nil]; }- (void)didReceiveMemoryWarning {[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated. }@end 與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的01-iOS获取系统iTunes音乐的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲综人网 | 福利电影一区二区三区 | 日韩大片在线免费观看 | 色悠悠在线视频 | 最新日韩在线视频 | 亚洲av综合永久无码精品天堂 | 日韩电影在线一区 | 成人在线a| 天天综合在线视频 | 午夜在线精品 | 免费成人av在线 | 一区二区三区四区五区六区 | 欧美黄色一级网站 | 激情五月开心婷婷 | 九月婷婷丁香 | 日本亚洲国产 | 亚洲四区 | h片在线免费看 | avtt中文字幕 | 午夜天堂精品久久久久 | 亚洲黄色激情视频 | www.久久99| 手机亚洲第一页 | 国产伦精品一区二区免费 | 日日骚影院 | 亚洲欧美亚洲 | 成人在线观看网 | 国产精品亚洲一区二区 | 日韩欧美国产激情 | 国产极品视频在线观看 | 农村少妇无套内谢粗又长 | 狠狠干影视 | 黄a毛片| 一本—道久久a久久精品蜜桃 | 蜜桃精品成人影片 | a资源在线观看 | 影音先锋国产在线 | 东北女人av| 色香蕉在线视频 | 久草高清视频 | 免费看60分钟黄视频 | 欧美一区二区视频在线观看 | 嫩草导航 | 四虎视频国产精品免费 | 久热伊人 | 国语一区二区 | 婷婷丁香综合网 | 欧美精品一区二区在线观看 | 女性女同性aⅴ免费观女性恋 | 无码精品人妻一区二区 | 黄色喷水视频 | 天天噜天天干 | 婷婷在线网 | www.桃色| 久久久久成人网站 | 丰满人妻一区二区三区53 | 美日韩在线观看 | 久久综合久久88 | 99插插插 | 六月婷婷久久 | 欧美亚洲一区二区三区 | 天天综合日日夜夜 | 精品视频第一页 | 插我一区二区在线观看 | 欧美成人精品一区二区男人看 | 福利在线视频导航 | 亚洲精品久久久久久久久久 | 久久思| 久久精品人人爽 | 涩涩资源网| 一级黄色片a | 中文在线观看免费网站 | av毛片网 | 超污视频在线观看 | 野外做受又硬又粗又大视频√ | 久久蜜桃av | 欧美肉大捧一进一出免费视频 | 91麻豆映画传媒 | 巨乳动漫美女 | 亚洲成人自拍网 | 熟女人妻aⅴ一区二区三区60路 | 成年人免费av | 中国挤奶哺乳午夜片 | 亚洲av色香蕉一区二区三区 | 国产又粗又猛又爽又黄无遮挡 | 8ppav| 成人一区二区av | 欧美成人黄色网 | 亚洲国产免费av | 男女猛烈无遮挡 | 国产精品13p| 亚洲天堂美女 | www.xxxx国产 | 黄色精品网站 | 一级二级三级黄色片 | 国产crm系统91在线 | 有码中文字幕 | wwwsss在线观看| 亚洲欧洲精品视频 |