《安卓系统Android应用程序开发PPT教材_第7章后台服务(10).ppt》由会员分享,可在线阅读,更多相关《安卓系统Android应用程序开发PPT教材_第7章后台服务(10).ppt(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、7.2 本地服务n7.2.3 服务绑定qbindService()函数的第2个参数是ServiceConnnectionn当绑定成功后,系统将调用ServiceConnnection的onServiceConnected()方法n而当绑定意外断开后,系统将调用ServiceConnnection中的onServiceDisconnected方法n由上可知,以绑定方式使用Service,调用者需要声明一个ServiceConnnection,并重载内部的onServiceConnected()方法和onServiceDisconnected方法7.2 本地服务n7.2.3 服务绑定n在第4行代码
2、中,绑定成功后通过getService()获取Service对象,这样便可以调用Service中的方法和属性n第8行代码将Service对象设置为null,表示绑定意外失效,Service实例不再可用1.private ServiceConnection mConnection=new ServiceConnection()Override1.public void onServiceConnected(ComponentName name,IBinder service)mathService=(MathService.LocalBinder)service).getService();1.
3、Overridepublic void onServiceDisconnected(ComponentName name)1.mathService=null;2.;7.2 本地服务n7.2.3 服务绑定q取消绑定仅需要使用unbindService()方法,并将ServiceConnnection传递给unbindService()方法n需注意的是,unbindService()方法成功后,系统并不会调用onServiceConnected(),因为onServiceConnected()仅在意外断开绑定时才被调用unbindService(mConnection);7.2 本地服务n7.2
4、.3 服务绑定q通过bindService()函数绑定Servcie时,onCreate()函数和onBinde()函数将先后被调用q通过unbindService()函数取消绑定Servcie时,onUnbind()函数将被调用,如果onUnbind()函数的返回true,则表示在调用者绑定新服务时,onRebind()函数将被调用q绑定方式的函数调用顺序http:/www.anzhuo.cc/forum-58-1.html 安卓HTC One X论坛 7.2 本地服务n7.2.3 服务绑定q示例SimpleMathServiceDemo使用绑定方式使用Servicen创建了MathService服务,用来完成简单的数学运算但足以说明如何使用绑定方式调用Service实例中的公有方法