Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android上本地服务和活动之间的通信_Android_Android Activity_Android Service - Fatal编程技术网

Android上本地服务和活动之间的通信

Android上本地服务和活动之间的通信,android,android-activity,android-service,Android,Android Activity,Android Service,我有一个活动可以启动本地服务进行后台操作 它们都驻留在同一进程上,因此它们之间的通信应该更简单 但是,我不明白如何根据我的需要实施沟通: 活动的行为: 创建时,检查服务是否已在运行: 如果它已在运行,请禁用“开始”按钮,并启用“停止”按钮 否则,启用启动按钮,禁用停止按钮 按下启动按钮时: 启动服务,并等待服务通知它已完成内部初始化。(可能需要10秒以上) 按下停止按钮时:停止服务 我的问题是如何让活动在不忙着等待的情况下收听服务 根据这个,我可以使用IBinder,但我将不得不忙着等待

我有一个活动可以启动本地服务进行后台操作

它们都驻留在同一进程上,因此它们之间的通信应该更简单

但是,我不明白如何根据我的需要实施沟通:

活动的行为:
  • 创建时,检查服务是否已在运行:

    • 如果它已在运行,请禁用“开始”按钮,并启用“停止”按钮
    • 否则,启用启动按钮,禁用停止按钮
  • 按下启动按钮时: 启动服务,并等待服务通知它已完成内部初始化。(可能需要10秒以上)
  • 按下停止按钮时:停止服务
我的问题是如何让活动在不忙着等待的情况下收听服务

根据这个,我可以使用IBinder,但我将不得不忙着等待


我很乐意为您提供建议。

您可以查看此链接以查看服务是否正在运行
如果需要交流,您可以使用localbroadcast

非常感谢,我会检查一下。