最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android 啟動 Service(startservice和bindservice) 兩種方式的區(qū)別

 更新時間:2015年11月09日 10:54:45   投稿:mrr  
andrid service 兩種啟動方式:第一種startservice,第二種bindservice,大家對這兩種啟動方式的區(qū)別了解嗎,下面跟著小編一起學習吧

Android Service 生命周期可以促使移動設備的創(chuàng)新,讓用戶體驗到最優(yōu)越的移動服務,只有broadcast receivers執(zhí)行此方法的時候才是激活的,當 onReceive()返回的時候,它就是非激活狀態(tài)。

如果沒有程序停止它或者它自己停止,service將一直運行。在這種模式下,service開始于調用Context.startService() ,停止于Context.stopService(). service可以通過調用Android Service 生命周期() 或 Service.stopSelfResult()停止自己。不管調用多少次startService() ,只需要調用一次 stopService() 就可以停止service。

可以通過接口被外部程序調用。外部程序建立到service的連接,通過連接來操作service。建立連接調開始于Context.bindService(), 結束于Context.unbindService(). 多個客戶端可以綁定到同一個service,如果service沒有啟動, bindService() 可以選擇啟動它。

服務不能自己運行,需要通過調用Context.startService()或Context.bindService()方法啟動服務。這兩個方法都 可以啟動Service,但是它們的使用場合有所不同。使用startService()方法啟用服務,調用者與服務之間沒有關連,即使調用者退出了,服 務仍然運行。使用bindService()方法啟用服務,調用者與服務綁定在了一起,調用者一旦退出,服務也就終止,大有“不求同時生,必須同時死”的 特點。

如果打算采用Context.startService()方法啟動服務,在服務未被創(chuàng)建時,系統(tǒng)會先調用服務的onCreate()方法,接著調用onStart()方法。如果調用startService()方法前服務已經(jīng)被創(chuàng)建,多次調用startService()方法并不會導致多次創(chuàng)建服務,但會導致多次調用onStart()方法。采用startService()方法啟動的服務,只能調用Context.stopService()方法結束服務,服務結束時會調用onDestroy()方法。

如果打算采用Context.bindService()方法啟動服務,在服務未被創(chuàng)建時,系統(tǒng)會先調用服務的 onCreate()方法,接著調用onBind()方法。這個時候調用者和服務綁定在一起,調用者退出了,系統(tǒng)就會先調用服務的onUnbind()方 法,接著調用onDestroy()方法。如果調用bindService()方法前服務已經(jīng)被綁定,多次調用bindService()方法并不會導致 多次創(chuàng)建服務及綁定(也就是說onCreate()和onBind()方法并不會被多次調用)。如果調用者希望與正在綁定的服務解除綁定,可以調用 unbindService()方法,調用該方法也會導致系統(tǒng)調用服務的onUnbind()-->onDestroy()方法。

總結:Service 的兩種啟動方法和區(qū)別

Service的生命周期方法onCreate, onStart, onDestroy

有兩種方式啟動一個Service,他們對Service生命周期的影響是不一樣的。

1 通過startService

  Service會經(jīng)歷 onCreate -> onStart

 stopService的時候直接onDestroy

如果是調用者自己直接退出而沒有調用stopService的話,Service會一直在后臺運行。下次調用者再起來可以stopService。

2 通過bindService

  Service只會運行onCreate, 這個時候服務的調用者和服務綁定在一起

調用者退出了,Srevice就會調用onUnbind->onDestroyed所謂綁定在一起就共存亡了。并且這種方式還可以使得
調用方(例如)調用服務上的其他的方法。

相關文章

最新評論

伽师县| 平邑县| 井陉县| 茌平县| 自贡市| 聂拉木县| 株洲市| 渭源县| 阿鲁科尔沁旗| 凭祥市| 弥勒县| 双桥区| 沅江市| 育儿| 女性| 重庆市| 大关县| 巴东县| 隆子县| 九江市| 监利县| 饶平县| 五大连池市| 广平县| 清镇市| 通榆县| 玛多县| 法库县| 淮滨县| 昆明市| 景谷| 崇仁县| 白银市| 卢龙县| 呼和浩特市| 固镇县| 兴隆县| 车险| 富蕴县| 翁牛特旗| 海口市|