编写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()