在生命周期方面,当我调用 stopService(intent) 时,服务的 onDestroy() 是否会立即被调用?我之所以问,是因为我在调用 onDestroy() 来杀死服务生成的这个线程时遇到问题。
提前致谢!
button.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Log.d(Tag, "in button's onClick");
Log.d(Tag, field.getText().toString());
String busNo = field.getText().toString();
field.setText("");
field.setAdapter(clearAdapter);
String url = makeURL(busNo);
Log.d(Tag, "after makeURL(), url is now "+url);
Intent intent = new Intent(JSoupTest9Activity.this, ServiceTest.class);
Log.d(Tag, "intent created...");
intent.putExtra("URL", url);
Log.d(Tag, "intent's extra put");
Log.d(Tag, "stopping intent service");
stopService(intent);
Log.d(Tag, "starting intent service");
startService(intent);
Log.d(Tag, "service started");
//pendingIntent = PendingIntent.getService(JSoupTest8Activity.this, 0, intent, 0);
//alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 30*1000, pendingIntent);
}
});
如您所见,我调用了 stopService() 来终止任何以前的服务(查询线程)以启动新服务(新查询线程)。