如何访问存储在iOS设备上的音乐文件?

时间:2016-11-06 01:16:59

标签: ios swift

我的应用程序无法找到iOS设备上音乐文件夹中的文件。

如果文件保存在下面作为应用程序数据(在我的游戏围栏中),没问题。但是当我去寻找" Music"文件夹,使用以下行:

dest_dir = try! FileManager.default.url(for: .musicDirectory, in: .allDomainsMask, appropriateFor: nil,  create: false)

musicDir = dest_dir

if UIApplication.shared.canOpenURL(musicDir) {
    print("found music directory")
}else {
    print("did not find music directory")
}

当代码执行canOpenURL时,我会收到权限投诉。

我也试过访问用户目录(以为我可以导航到音乐)。

有关应用程序如何访问iOS设备上音乐系统文件夹下的文件和播放列表的任何线索?

2 个答案:

答案 0 :(得分:6)

没有"音乐文件夹"在iOS中。要访问用户的音乐库,请使用Media Player框架。

示例(假设您已获得用户的必要授权):

let query = MPMediaQuery()
let result = query.items

答案 1 :(得分:0)

出于安全和隐私原因,iOS不允许您直接访问“音乐”文件夹;您需要使用MediaPlayer framework中的API。假设您正在尝试播放用户库中的内容,请查看MPMusicPlayerController;您需要使用MPMediaItem为其提供一些MPMediaQuery个实例,然后从控制器上的MPMediaPlayback protocol调用方法以使其播放内容。