I make a music player with swift. I want that an user adds music files via the shared folder in iTunes. I made the shared folder. How can I load files from the shared folder to UITableViewCell
and then manage them?
I wrote a following code. It works for me
func exportFilesFromFolder() {
var folder = fileManager.URLsForDirectory(NSSearchPathDirectory.DocumentDirectory, inDomains: NSSearchPathDomainMask.UserDomainMask).first as! NSURL
var allFiles = fileManager.contentsOfDirectoryAtURL(folder, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions.SkipsHiddenFiles, error: nil)!
var filterArray = allFiles.map(){ $0.lastPathComponent }.filter(){ $0.pathExtension == "mp3" } as [String]
// println("filter array \(allFiles[3])")
var superURL: NSURL!
for itemInFilterArray in filterArray {
var direct = fileManager.URLsForDirectory(NSSearchPathDirectory.DocumentDirectory, inDomains: NSSearchPathDomainMask.UserDomainMask)
if var url: NSURL = direct.first as? NSURL {
superURL = url.URLByAppendingPathComponent(itemInFilterArray)
}
var playerItem = AVPlayerItem(URL: superURL)
var equalazerString: String!
var commonMetaData = playerItem.asset.commonMetadata as! [AVMetadataItem]
for item in commonMetaData {
if item.commonKey == "title" {
equalazerString = item.stringValue
if equalazerString == currentSongString {
localArrayNames.append(superURL)
} else {
// println("it is not equals")
}
}
}
}
}