2017-03-23 24 views
0

我想知道如何在應用程序中下載文件,然後下載音樂文件,然後我想在應用程序中播放它,然後找到此功能並使用它下載。 謝謝。如何播放在應用程序中下載的音頻文件?

func downloadSong (_ sender:UIButton) { 
    if let url = URL(string: startURL) { 
     // then lets create your document folder url 
     let documentsDirectoryURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first! 

     // lets create your destination file url 
     let destinationUrl = documentsDirectoryURL.appendingPathComponent(url.lastPathComponent) 
     print(destinationUrl) 

     // to check if it exists before downloading it 
     if FileManager.default.fileExists(atPath: destinationUrl.path) { 
      print("The file already exists at path") 

      // if the file doesn't exist 
     } else { 
      print("Downloading started") 

      // you can use NSURLSession.sharedSession to download the data asynchronously 
      URLSession.shared.downloadTask(with: url, completionHandler: { (location, response, error) -> Void in 
       guard let location = location, error == nil else { return } 
       print("Downloading finished") 

       do { 
        // after downloading your file you need to move it to your destination url 
        try FileManager.default.moveItem(at: location, to: destinationUrl) 
        print("File moved to documents folder") 
       } catch let error as NSError { 
        print(error.localizedDescription) 
       } 
      }).resume() 
     } 
    } 
} 

回答

0

嘗試AVAudioPlayer與目標網址

AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:destinationUrl error:nil]; 
player.numberOfLoops = -1; 
[player play]; 

斯威夫特版本:

let player = try? AVAudioPlayer(contentsOf: destinationUrl) 
player?.numberOfLoops = -1; 
player?.play() 
相關問題