为什么在Service中使用onStartCommand()?

问题描述 投票:2回答:3

我在使用服务的地方有点困惑,我确实实现了onStartCommand().在某些示例中,实现了onStartcommand()方法,而在其他地方则没有实现。对于我需要使用这种方法的情况,您能否澄清我的疑问。

android service
3个回答
2
投票

Android文档说onStartCommand()是:

每次客户端明确启动服务时,系统都会调用通过调用startService(Intent),提供它提供的参数以及代表开始请求的唯一整数令牌。不要打电话直接使用此方法


1
投票

当您使用onStartCommand()方法启动服务时,将调用startService()。您永远不会自己启动服务,而是使用意图请求启动给定的服务。

某些示例使用bindService()方法而不是startService()方法(您也可以同时使用两者)。只要绑定了另一个应用程序组件,绑定服务就会运行。

通常,启动的服务执行单个操作,并且不将结果返回给调用方。


1
投票

onStartCommand用于将命令(意图)传递给服务。可以根据需要多次调用它。但是,onCreate仅被调用一次,以确保创建了服务。

© www.soinside.com 2019 - 2024. All rights reserved.