编写Service的步骤:
第一步:在androidMainfest.xml功能清单对服务进行配置
//PhoneListenService是自己编写继承Service的类
<service android:name=".PhoneListenService" />
第二步:继承Service类,编写自己想要的服务,如编写PhoneListenService
public class PhoneListenService extends Service{
private static final String TAG = "PhoneListenService";
@Override
public void onCreate() {//服务开启后 就会被调用 而且只调用一次
// TODO Auto-generated method stub
Log.i(TAG,"填写服务初始化工作代码,该方法只会被调用一次,服务每次启动的时候被调用");
super.onCreate();
}
@Override
public void onStart(Intent intent, int startId) {
// TODO Auto-generated method stub
Log.i(TAG,"每执行一次startService()方法就会执行该方法");
super.onStart(intent, startId);
}
@Override
//服务结束后,删除缓存目录
public void onDestroy() {
// TODO Auto-generated method stub
Log.i(TAG,"服务结束后调用该方法");
super.onDestroy();
}
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
}
第三步:服务不会自己启动,必须调用Context.startService()方法启动服务
通过调用Context.startService()启动服务的生命周期:
1.服务第一次启动后 会调用onCreate()方法,当执行多次Context.startService()方法,onCreate()也只会被调用一次
2.每执行Context.startService()方法,onStart()就会被调用一次。
3.当服务结束的时候,就会调用onDestroy()方法。
生命周期:oncreate()--->onStart()---->onDestroy()