自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

深入淺出 Android核心組件Service(3)

移動開發(fā) Android
本文51CTO專欄作者傻蛋將向我們介紹深入淺出 Android核心組件Service第三部分的系列文章。當(dāng)我們繼想綁定一個(gè)Service又想在 Activity停止時(shí),Service不會停止,我們可以先StartService,然后再BindService()。

前兩節(jié)中可以看到Activity和Service,context.startService對應(yīng)著Service中的onStart()方法,context.onBindService對應(yīng)的是Service中的onBind()方法。當(dāng)我們繼想綁定一個(gè)Service又想在 Activity停止時(shí),Service不會停止,我們可以先StartService,然后再BindService()。這時(shí)候的流程圖如下所示:

 

 

點(diǎn)擊查看大圖

此時(shí)需要注意一個(gè)問題,當(dāng)Activity退出的時(shí)候,Sercvice并不會停止,此時(shí)我們可以再進(jìn)入Activity重新綁定,當(dāng)這時(shí)候 Service就會調(diào)用onRebind()方法,但是調(diào)用onRebind()方法的前提是先前的onUnbind()方法執(zhí)行成功,但是使用 super.onUnbind(intent)是執(zhí)行不成功的,這時(shí)候我們要手動的使其返回true,再次綁定時(shí)Rebind()就會執(zhí)行。否則,如果退出時(shí)不顯示的指定onUnbind()為成功的話(為false),那么重新啟動此Activity來綁定服務(wù)時(shí),Service的onBind()方法和onReBind都不會執(zhí)行,但是ServiceConnection方法確一定會回調(diào)了。這說明在Service中的onBind()方法不同于 onStart()方法不能被重復(fù)調(diào)用。

本節(jié)代碼和上節(jié)代碼大致相同,只不過是在bind之前先start service ,大家可以在DDMS中看onUnbind() onRebind()的調(diào)用情況。本節(jié)代碼在此下載:http://down.51cto.com/data/326376

責(zé)任編輯:佚名 來源: 最牛網(wǎng)
相關(guān)推薦

2012-02-07 14:37:01

Android核心組件Service

2012-02-07 15:16:01

Android核心組件Service

2012-02-07 15:29:17

Android核心組件Service

2012-02-07 14:45:52

Android核心組件Service

2012-02-21 13:55:45

JavaScript

2011-07-04 10:39:57

Web

2021-03-16 08:54:35

AQSAbstractQueJava

2011-05-05 14:44:43

SurfaceFlinSurfaceActivity

2013-11-14 15:53:53

AndroidAudioAudioFlinge

2022-09-26 09:01:15

語言數(shù)據(jù)JavaScript

2022-05-06 07:19:11

DOMDiff算法

2017-07-02 18:04:53

塊加密算法AES算法

2019-01-07 15:29:07

HadoopYarn架構(gòu)調(diào)度器

2021-07-20 15:20:02

FlatBuffers阿里云Java

2012-05-21 10:06:26

FrameworkCocoa

2022-01-13 09:38:25

Android架構(gòu)設(shè)計(jì)

2009-11-17 17:31:58

Oracle COMM

2021-07-19 11:54:15

MySQL優(yōu)先隊(duì)列

2023-12-04 13:22:00

JavaScript異步編程

2010-07-26 12:57:12

OPhone游戲開發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號