关于iOS获取音乐库的音乐信息 (获取本地音乐文件)
来源:互联网 发布:修改图片大小软件 编辑:程序博客网 时间:2024/05/18 19:42
年前在项目开发的时候,当时有一个上传本地音乐文件的一个功能。需求是从本地获取音乐文件,并对音乐文件进行截取。
实现获取本地音乐文件的方法的代码如下:
MPMediaQuery *allMp3 = [[MPMediaQuery alloc] init]; // 读取条件 MPMediaPropertyPredicate *albumNamePredicate = [MPMediaPropertyPredicate predicateWithValue:[NSNumber numberWithInt:MPMediaTypeMusic ] forProperty: MPMediaItemPropertyMediaType]; [allMp3 addFilterPredicate:albumNamePredicate]; NSLog(@"Logging items from a generic query..."); self.allMusicItems = [allMp3 items]; for (MPMediaItem *song in _allMusicItems) {// NSString *songTitle = [song valueForProperty: MPMediaItemPropertyTitle]; NSString *songTitle = song.title; NSLog (@"%@, %@, %@", songTitle, song.assetURL,song.artist); }/** 注: 使用 - (id) valueForProperty: (NSString *) property 的方法获取音乐的名称和使用点语法出来的结果是一样的。 这是苹果给出的解释: MP_EXTERN NSString * const MPMediaItemPropertyPersistentID NS_AVAILABLE_IOS(4_2); // filterable@property (nonatomic, readonly) MPMediaEntityPersistentID persistentID NS_AVAILABLE_IOS(5_0);MP_EXTERN NSString * const MPMediaItemPropertyMediaType; // filterable@property (nonatomic, readonly) MPMediaType mediaType NS_AVAILABLE_IOS(7_0);MP_EXTERN NSString * const MPMediaItemPropertyTitle; // filterable@property (nonatomic, readonly, nullable) NSString *title NS_AVAILABLE_IOS(7_0);MP_EXTERN NSString * const MPMediaItemPropertyAlbumTitle; // filterable@property (nonatomic, readonly, nullable) NSString *albumTitle NS_AVAILABLE_IOS(7_0);*/
但是,出现问题了,获取本地的音乐文件除了音乐文件的路径(也就是assetURL)为空,获取不到,其它的音乐名称,歌手都可以获得,开始以为是哪里出现问题,开始各种百度,谷歌,终于找到问题了
由于iPhone 自带的音乐软件Music的推出.从iPod取出来的音乐MPMediaItemPropertyAssetURL属性可能为空.
这是因为iPhone自带软件Music对音乐版权的保护,对于所有进行过 DRMProtection(数字版权加密保护)的音乐都不能被第三方APP获取并播放.即使这些音乐已经下载到本地.但是还是可以播放本地未进行过数字版权加密的音乐.也就是您自己手动导入的音乐。
那这也太坑了,自己获取音乐文件还要在手动导入吗? 所以商量过后,果断砍掉这个小功能。所以,在这里记录一下,如果给做相关功能开发的人提示。这个问题也没有妥善解决,如果谁有解决的了,也可以告诉我们,大家一起学习吗?
这里有一篇详细介绍关于获取音乐库音乐文件的相关博客 http://www.cnblogs.com/lyanet/archive/2013/03/27/2985019.html
0 0
- 关于iOS获取音乐库的音乐信息 (获取本地音乐文件)
- ios获取本地音乐库音乐很详细
- 获取本地音乐文件的专辑,图片,音乐信息
- ios 获取音乐库音乐相关
- ios怎样获取音乐库信息(一)
- iOS获取本地音乐文件
- iOS获取本地音乐文件
- Android 获取音乐文件的信息
- Android获取音乐文件的信息
- Android获取音乐文件的信息
- IOS获取本地音乐
- ios 获取本地音乐
- IOS 播放音乐库的音乐
- andriod获取本地音乐文件
- android-v如何获取音乐文件的信息
- 获取外存卡上的音乐文件信息
- iOS获取本地音乐播放
- iOS提取音乐库文件 iOS播放系统音乐库音乐文件
- Codeforces 626D 暴力
- Vmware虚拟机安装安卓4.0系统教程
- 脉络清晰的BP神经网络讲解,赞
- Fortran学习笔记(7)
- AppCompatActivity使用
- 关于iOS获取音乐库的音乐信息 (获取本地音乐文件)
- TYPE Directive in FOR XML Queries(FOR XML查询中的TYPE指令)
- Mac 下配置 Git 服务器
- 简单分析一下socket中的bind
- 打包提示"此证书的签发者无效"--系统认证证书(AppleWWDRCA.cer)过期
- 基于c++控制台的Socket通信源码
- 像QQ空间的Android沉浸式通知栏
- Java中的反射机制
- bing 地图api使用