ios - 如何在 iOS 的 sqlite 数据库中存储音频文件

标签 ios objective-c iphone sqlite asihttprequest

我正在为音频播放器开发 iPhone 应用程序。我想为用户提供一些选项,以便他们可以通过流媒体收听歌曲/音乐,或者他们可以下载音频文件并存储在 sqlite 数据库中。我知道如何以编程方式在应用程序中流式传输音频文件。但是我不知道如何使用 BLOB 将下载的音频文件存储在 sqlite 数据库中。此外,将音频文件存储在 sqlite 数据库中后,我需要获取音频文件并播放歌曲。如何从 sqlite 数据库中获取音频文件?

这是我下载音频文件的代码。

NSURL *url = [NSURL URLWithString:@"http://www.fileurl.com/example.mp3"];

ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];

[request setDownloadDestinationPath:[NSString stringWithFormat:@"%@",dataPath]]; 

[request setDelegate:self];

[request startAsynchronous];

最佳答案

我不建议将二进制文件作为 blob 存储在数据库中。 它会让你在未来增加数据库文件大小时遇到​​问题。您将不得不实现智能真空操作,这在大数据量上非常慢。 我强烈的意见:文件必须存储在文件系统中。将您的文件存储在应用程序文档文件夹中,并在数据库中存储一种指向它们的链接。

关于ios - 如何在 iOS 的 sqlite 数据库中存储音频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36280264/

相关文章:

iphone - native iOS Rss Feed 阅读器在 safari 中打开完整故事

ios - 如何使用选项(共享、完成、删除)按钮设置 Tableview Cell Movable?它的行动?

ios - UITableViewController自定义setEditing:animated:

objective-c - 如何在 NSLog 中显示 NSString

iphone - 自动释放池崩溃的应用程序

iphone - UITableViewCells 位于 UITableView 的中心

ios - 使用 swift 在 webview 页面中查找文本?

ios - XCode Instruments OpenGL ES Analyzer 仪器未能获得对目标设备的引用?

ios - 如何在使用 NSURLSession 时传递凭据

ios - 通知发出声音但不显示任何内容