我正在从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();
@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方法的意图
同时获取意图,将代码放入onBind()方法中服务:@Override公开IBinder onBind(意图){mTourName = intent.getStringExtra(“ tour_name”);返回mBinder;}
尝试一下。