我试图通过意图将数据从活动发送到服务。如何将数据从活动发送到服务
这是在我的活动课
Intent i= new Intent(this,SampService.class);
i.putExtra("startTimeHour", timePicker1.getCurrentHour());
i.putExtra("endTimeHour", timePicker2.getCurrentHour());
i.putExtra("startTimeMinute",timePicker1.getCurrentMinute());
i.putExtra("endTimeMinute", timePicker2.getCurrentMinute());
startActivity(i);
代码这是我的服务类的代码
public class SampService extends Service implements Runnable {
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
public void onCreate()
{
Toast.makeText(getApplicationContext(), "Service Created", Toast.LENGTH_LONG).show();
String startTimeHour,startTimeMinute,endTimeHour,endTimeMinute;
}
public void onStart()
{
Thread t=new Thread(this);
t.start();
}
public void run() {
}
“您不会将数据从活动发送到具有意向的服务。” - 是的你是。它是命令模式,使用'startService()'以'Intents'的形式发送命令。引用[文档](http://developer.android.com/guide/topics/fundamentals/services.html)“启动服务的多个请求会导致对服务的onStartCommand()的多个相应调用。但是,只有一个请求停止服务(使用stopSelf()或stopService())来停止它。“这与'IntentServices'很好地结合。 – CommonsWare 2012-03-31 14:32:15
@David Wassler我正在使用服务检查时间值,并在我的开始和结束时间之间启用无声模式 – 2012-03-31 14:57:38
好的,那么即使您的活动不是,也需要服务才能运行。 @Akhil的解决方案应该可以工作。 [这个问题/答案](http://stackoverflow.com/questions/4252371/unable-to-get-data-from-activity-to-service)显示了如何在'startService()'中使用的Intent中传递值以及如何在服务中的onStartCommand()中检索它们。 – 2012-03-31 15:50:12