我尝试将一个Intent从Activity发送到Service(一个方向),但不知怎的,它不会调用onStartCommand函数。
以下是我的活动代码:
Intent serviceIntent = new Intent();
serviceIntent.setClassName("com.xx.pak", "com.xx.pak.MyService.act");
serviceIntent.putExtra("UserChoice", userChoice);
startService(serviceIntent);
以下是我的服务代码:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
switch (action) {
case "com.xx.pak.MyService.act":
userChoice = intent.getIntExtra("UserChoice", 0);
break;
default:
super.onStartCommand(intent, flags, startId);
break;
}
return START_STICKY;
}
一种可能的解决方案是向manifest添加服务,但它们是两个不同的应用程序,我不确定如何在主清单中包含彼此。
另外,如果发送意图不起作用,我可以考虑使用广播进行通信。我是Android的新手,如果我走的是正确的道路,请告诉我。谢谢。