Android docs about Services在名为“已启动”的子部分中说(与绑定服务相反,它是启动服务),
“通常,已启动的服务仅执行一次操作,而不会执行
返回结果给调用者。例如,它可能下载或
通过网络上传文件。 ”
但是,下载操作是否不会将结果(即下载的文件)返回给调用方?
例如,从网络下载mp3
文件的服务实际上返回的结果是mp3
文件,不是吗?
最佳答案
started service
就像是您的坏奴隶。当您要求它执行某项操作时,他会执行该操作,但他不会为您返回实际结果。例如,您问:“请给我水!”他没有拿一杯水,而是去准备一杯水,但没有给你,而是向你大喊:“我把你的水放在桌上,然后去喝。” Bound service
就像是餐厅的服务员。你问他我要一杯水,他就去拿一杯水回来。
因此,现在由您来判断。奴隶剂量带来您的要求吗?我会说不,他按我的要求行事,但他只是告诉我如何获得准备好的结果。
剂量服务员带来您的要求吗?是的,当然。started service
能否以任何方式带来结果?是的,他可以,但是他的能力仅限于您可以通过意图传递的所有对象,因为为了告诉您我已经做到了,他必须使用广播。