我的问题如下:
我从我的主Activity开始我的intentService。此intentService使用audioRecord进行一些音频处理。
但是,当我需要在我的应用程序中启动另一个活动(在这种情况下录制视频)时,我需要在后台停止intentService(因为它占用了音频资源)。
有没有办法从主活动中停止intentService?
答案 0 :(得分:0)
您可以使用主活动中的stopService(),如下所示:
stopService(new Intent(yourMainActivity.this,yourIntentService.class));
答案 1 :(得分:0)
使用您用于启动IntentService的相同的预先声明的intent
并调用
stopService(intent);
如果您创建新意图并使用它来停止服务,则服务在完成处理之前的意图之前不会响应它。
但应该注意的是,这不会立即停止服务。因此,解决此问题的方法是使用全局布尔变量。当它设置为true时,服务中的处理将执行,当你想要结束它时,你的活动将boolean变量设置为false。然后你可以通过调用
来停止服务stopSelf();