是否可以在 App 沙箱之外的 iOS 上保存录制的音频文件?

Posted

技术标签:

【中文标题】是否可以在 App 沙箱之外的 iOS 上保存录制的音频文件?【英文标题】:Is it possible to save a recorded audio file on iOS outside the App sandbox? 【发布时间】:2015-06-25 06:28:21 【问题描述】:

我正在开发一种 WhatsApp 应用程序。用户可以选择传输视频、图像、音频等。使用 ALAsset 框架套件,我可以将图像和视频保存在设备照片库等中。例如

- (void)writeVideoAtPathToSavedPhotosAlbum:(NSURL *)videoPathURL
                       completionBlock:(ALAssetsLibraryWriteVideoCompletionBlock)completionBlock

我的问题是我可以对音频文件做类似的事情吗?现在我将音频文件保存在沙箱本身中,比如 NSDocumentsDirectory 等。是否有规定将录制的音频文件、接收到的音频文件保存在某种系统存储中,例如照片库?我不想让定期收到的音频文件使应用程序膨胀

问候 0x6d6e

【问题讨论】:

或另一种询问方式...我能否以编程方式创建播放列表并将其保存到 iTunes。想法全部记录下来,接收到的音频文件进入 iTunes 上的这个播放列表,用户可以在应用程序之外访问。因此,基本上音频文件不会存储在 App Sandbox 中,而是存储在某种全局 iTunes 存储中。 【参考方案1】:

不,这在 ios 8 之前是不可能的。你做得对。您需要将音频保存在您的应用沙箱中。 解决方法可以将音频文件转换为视频文件,但这不是一个胜利。

【讨论】:

好的。有点令人失望的是,即使可以保存图片、视频等其他资产,API 也不允许我们这样做。谢谢 “不,这在 iOS 8 之前是不可能的” 你是说 iOS8 现在可以实现了吗? 我不是说这个。包括 iOS 8。

以上是关于是否可以在 App 沙箱之外的 iOS 上保存录制的音频文件?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 React Native App 录制音频和视频(没有 Expo)

如何在 iOS 中使用 Swift/SwiftUI 将我从应用数据导出的文本文件移动到应用沙箱之外的位置?

使用 rtmplite 在 Google App Engine 中录制音频?

在 html5 应用上录制音频

目前有啥方法可以在装有 iOS 9 的 iOS 设备上浏览 App 文件夹/App Sandbox

在网页上录制音频 - iOS 和 Android