1.类似于Activity类和其他组件,开发人员必须在应用程序配置文件中声明全部的service.为了声明Service,需要向<application>标签中添加<Service>子标签如图Mainest中的配置

2.如IntentService工程图一个service类在Activity去startService

3.对于InternService所包含的的的全部操作:没有参数的构造方法和onHandleIntent()方法,如果开发人员决定重写其他回调方法,如OnCreate()、OnStartCommand()或OnDestory(),需要调用父类实现,这样IntentService能正确处理工作线程的生命周期

4.Service类中的代码:

packagecom.example.intentservice;

importandroid.app.IntentService;
importandroid.content.Intent;
importandroid.text.format.Time;
importandroid.util.Log;

publicclassCurrentTimeServiceextendsIntentService{

publicCurrentTimeService(){
super("CurrentTimeService");
//TODOAuto-generatedconstructorstub
}

@Override
protectedvoidonHandleIntent(Intentintent){
//TODOAuto-generatedmethodstub
Timetime=newTime();//创建对象
time.setToNow();//获取当前系统时间
StringcurrentTime=time.format("%Y-%m-%d%H:%M:%S");
Log.i("CurrentTimeService",currentTime);


}

}

5.Activity类中的代码:

packagecom.example.intentservice;

importandroid.os.Bundle;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.view.Menu;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;

publicclassCurrentTimeActivityextendsActivity{

@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Buttonbutton1=(Button)findViewById(R.id.button1);
button1.setOnClickListener(newOnClickListener(){

@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
startService(newIntent(CurrentTimeActivity.this,CurrentTimeService.class));

}
});
}

@Override
publicbooleanonCreateOptionsMenu(Menumenu){
//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.
getMenuInflater().inflate(R.menu.activity_main,menu);
returntrue;
}

}

附件:http://down.51cto.com/data/2364289