Android - 使用BroadcastReceiver中的参数启动服务

时间:2012-09-24 00:20:31

标签: android service broadcastreceiver

我写了一个在收到BOOT_COMPLETED时运行服务(MyService类)的应用程序。

public class StartServiceAtBootReceiver extends BroadcastReceiver {
    public void onReceive(final Context context, Intent intent) {
        if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) {
            Intent inten = new Intent(context, MyService.class);
            inten.putExtra("autoLogin", true);
            context.startService(inten);
        }
    }
}

这很好用。但是,我的问题是我不知道如何从服务端接收额外的参数“autoLogin”。通常,它可以从onBind(Intent)方法接收。但是,在这种情况下不会调用它,因为BroadcastReceiver无法绑定服务。救救我!

1 个答案:

答案 0 :(得分:4)

您可以使用

onStartCommand(Intent intent, int flags, int startId){

intent.getBooleanExtra( “自动登录”,利用DefValue); }