服务在意图中接收Null值

时间:2020-01-18 11:29:22

标签: android android-intent service broadcastreceiver

我正在从BroadcastReceiver启动服务,并将一些值从BroadcastReceiver发送到服务。当我尝试在服务中检索这些值时,它给了我空值。

请让我知道我在做什么错。预先感谢!

从广播开始服务-

    Intent serviceIntent = new Intent(context, LatestCallService.class);
    intent.putExtra("from","Internet");
    context.startService(serviceIntent);

在服务中获取价值,但给予Null-

    public int onStartCommand(Intent intent, int flags, int startId) {
    super.onStart(intent, startId);
    String a= intent.getStringExtra("from");
    Toast.makeText(this, " Name : "+a, Toast.LENGTH_SHORT).show();

2 个答案:

答案 0 :(得分:1)

 @Override
    public void onReceive(Context context, Intent intent) {
        Toast.makeText(context, "Event", Toast.LENGTH_SHORT).show();
        intent = new Intent(context, MyService.class);
        intent.putExtra("check","done");
        context.startService(intent);
    }

使用onReceive方法中的Intent

答案 1 :(得分:0)

在获取意图的同时将代码放入onBind()方法中
服务: @Override 公开IBinder onBind(意图){ mTourName = intent.getStringExtra(“ tour_name”); 返回mBinder; }

尝试一下。

相关问题