Android:如何获得服务收到的意图?

时间:2009-12-27 02:23:35

标签: android service android-intent

我正在开展一项服务,其目的是提供额外的信息。

如何获得服务代码中的意图?

在活动中没有类似getIntent().getExtras()的功能。

3 个答案:

答案 0 :(得分:83)

onStart()现已弃用。您应该使用onStartCommand(Intent, int, int)代替。

答案 1 :(得分:40)

覆盖onStart() - 您收到Intent作为参数。

答案 2 :(得分:4)

传递额外内容:

Intent intent = new Intent(this, MyService.class);
intent.putExtra(MyService.NAME, name);
...
startService(intent);

要检索服务中的额外内容:

public class MyService extends Service {  
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        super.onStartCommand(intent, flags, startId);
        String name = intent.getExtras().getString(NAME);
        ...
    } 
    ...
}