我正在编写一个程序,可以在后台连续录制音频,并且会不断填充缓冲区中的数据,以便对其进行处理。
所以这部分程序有效;即使设备处于睡眠模式,该应用也将在后台运行。但是,经过一段时间(可能是1或2小时?)后,该应用程序将突然停止运行,甚至可能重新启动。
使用AsyncTask的扩展程序执行连续录音和处理。反正有没有让这个程序无限期地运行,它的程序是什么?它无限期地运行直到一个点;除非用户请求,否则我不希望它关闭。
答案 0 :(得分:1)
的Urk。请不要使用AsyncTask!相反,使用IntentService,它在后台运行在一个单独的线程上。即使设备处于睡眠状态,也不应在正常情况下关闭。基本上,只要它的主方法onHandleIntent()正在运行它就会运行,并且它将一直运行直到它完成所有语句。