如何从互联网下载音频(mp3)文件,他们存储在iPhone应用程序?

时间:2014-11-27 17:16:38

标签: objective-c iphone audio download mp3

我尝试从我的在线服务器下载音频(mp3)文件并将其存储在" Documents"我的iPhone应用程序的文件夹,以便我可以在我的应用程序中播放它们没有任何互联网连接 我使用以下代码下载并存储它。

[NSURLConnection sendAsynchronousRequest: [NSURLRequest requestWithURL: [NSURL URLWithString:fileURL]]    
                                   queue: [NSOperationQueue mainQueue]
    completionHandler: ^( NSURLResponse *response, NSData *data, NSError *error ) {
          if(error)
          { }
           else
          {
             NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
             NSString *filePath = [[paths objectAtIndex:0] stringByAppendingPathComponent:path];
             [data writeToFile:filePath atomically:YES];
          }
     }];

通过这段代码,我可以下载mp3文件并且它是数据变量,但似乎[data writeToFile:filePath atomically:YES];不管用。 它不是保存在文档中。 对于图像文件,它使用以下代码。

UIImage *image = [UIImage imageWithData:data];
[UIImagePNGRepresentation(image) writeToFile:filePath atomically:YES];

所以对于mp3文件,有什么方法与图像文件保存类似吗?

由于

2 个答案:

答案 0 :(得分:0)

我用过:

 NSData *soundData = [NSData dataWithContentsOfURL:soundURL];

如果你想要异步,可以把它放到后台队列。

我希望如此有用

答案 1 :(得分:-1)

使用您尝试编写的相同路径来处理现有文件。您必须具有任何具有相同名称的文件( filePath )。在这种情况下, writeToFile 方法将正常工作。