Android面试

面试:启动service的两种方法

2019-07-10  本文已影响0人  天涯的尽头s风沙

一、startService(Intent service);

启动service:startService(Intent service)时调用的方法:

终止service:stopService(Intent service)时调用的方法:

若没有调用stopService()。Service会一直在后台运行,下次调用者仍可以stopService
多次调用startService,Service只能被创建一次,即onCreate()方法只被调用一次,但是每次都会调用onStartCommand()。

二、bindService(intent,connection, Context.BIND_AUTO_CREATE);

启动service:bindService时调用的方法(调用者和Service绑定在一起):

多次调用bindService()方法时onBind()只执行最初的一次

终止service(两种情况):

unBindService(ServiceConnect conn)时调用的方法:
调用者的Context不存在(如Activity被finish),多个绑定时为所有的Context都不存在:

只有第一次执行bindService()时onCreate()和onBind()方法才会被调用,多次执行bindService()时不会被多次调用

上一篇下一篇

猜你喜欢

热点阅读