繁体   English   中英

从活动发送消息到intentService

[英]Sending message from Activity to intentService

我的问题如下:

我从我的主要Activity开始了我的intentService。 此intentService使用audioRecord进行一些音频处理。

但是,当我需要在应用程序中启动另一个活动(在这种情况下,是录制视频)时,我需要在后台停止intentService(因为它占用了音频资源)。

有没有办法从主要活动中停止intentService?

您可以像这样从您的主要活动中使用stopService():

stopService(new Intent(yourMainActivity.this,yourIntentService.class));

使用与启动IntentService并调用时使用的相同的预先声明的intent

stopService(intent);

如果创建新的意图并使用它来停止服务,则该服务将在完成对先前意图的处理之前不会对其进行响应。

但应注意,这不会立即停止服务。 因此,解决此问题的方法是使用Global布尔变量。 当将其设置为true时,将在服务中执行处理,并且当您要结束时,将活动中的boolean变量设置为false。 然后您可以通过调用从自身内部停止服务

stopSelf();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM