xcode AVAudioRecorder如何每30分钟执行一次背景记录

时间:2013-06-12 02:58:31

标签: xcode avaudiorecorder

我在应用程序处于后台时进行录制(将音频添加到后台模式),它将无限期录制,应用程序在后台保持活动状态。

我希望能够让应用程序在后台保持活动状态,并且每隔30分钟录制一个30秒的声音片段。

我已尝试将NSTimerAVAudioRecorder的{​​{1}}方法结合使用,但该应用会在recordForDuration:触发之前被终止。有什么想法吗?

以下代码在后台运行,并且每5秒记录5秒,但如果我将scheduledTimerWithTimeInterval增加到1分钟则不起作用。

NSTimer

1 个答案:

答案 0 :(得分:0)

Skype会这样做,所以你也可以。

您需要在Info.plist中设置UIBackgroundModesaudio,并且您需要确保音频会话处于活动/正在运行/切换应用之前的任何内容(假设您不会突然开始录制/播放音乐/无论如何当你的应用程序在后台时。)

文档说“音频”可以让你在后台播放音频,但这可能也适用于录制音频。如果它不起作用,你可以尝试一些事情:

  • 同时设置“voip”和“audio”。
  • 玩沉默(这可能是最容易的 使用音频队列API)。