如题所述
åªéè¦éæ°startServiceå³å¯éæ°è°ç¨serviceçonStart()ã
Serviceæ¯å¨ä¸æ®µä¸å®çæ¶é´è¿è¡å¨åå°ï¼ä¸åç¨æ·äº¤äºåºç¨ç»ä»¶ãæ¯ä¸ªServiceå¿ é¡»å¨manifestä¸ éè¿<service>æ¥å£°æãå¯ä»¥éè¿contect.startserviceåcontect.bindservericeæ¥å¯å¨ã
Serviceåå ¶ä»çåºç¨ç»ä»¶ä¸æ ·ï¼è¿è¡å¨è¿ç¨ç主线ç¨ä¸ãè¿å°±æ¯è¯´å¦æserviceéè¦å¾å¤èæ¶æè é»å¡çæä½ï¼éè¦å¨å ¶å线ç¨ä¸å®ç°ã
serviceç两ç§æ¨¡å¼(startService()/bindService() ï¼
1.æ¬å°æå¡ Local Service ç¨äºåºç¨ç¨åºå é¨ã
å®å¯ä»¥å¯å¨å¹¶è¿è¡ï¼ç´è³æ人åæ¢äºå®æå®èªå·±åæ¢ãå¨è¿ç§æ¹å¼ä¸ï¼å®ä»¥è°ç¨Context.startService()å¯å¨ï¼è以è°ç¨Context.stopService()ç»æãå®å¯ä»¥è°ç¨Service.stopSelf() æ Service.stopSelfResult()æ¥èªå·±åæ¢ãä¸è®ºè°ç¨äºå¤å°æ¬¡startService()æ¹æ³ï¼ä½ åªéè¦è°ç¨ä¸æ¬¡stopService()æ¥åæ¢æå¡ã
ç¨äºå®ç°åºç¨ç¨åºèªå·±çä¸äºèæ¶ä»»å¡ï¼æ¯å¦æ¥è¯¢å级信æ¯ï¼å¹¶ä¸å ç¨åºç¨ç¨åºæ¯å¦Activityæå±çº¿ç¨ï¼èæ¯åå¼çº¿ç¨åå°æ§è¡ï¼è¿æ ·ç¨æ·ä½éªæ¯è¾å¥½ã
2.è¿ç¨æå¡ Remote Service ç¨äºandroidç³»ç»å é¨çåºç¨ç¨åºä¹é´ã
å®å¯ä»¥éè¿èªå·±å®ä¹å¹¶æ´é²åºæ¥çæ¥å£è¿è¡ç¨åºæä½ã客æ·ç«¯å»ºç«ä¸ä¸ªå°æå¡å¯¹è±¡çè¿æ¥ï¼å¹¶éè¿é£ä¸ªè¿æ¥æ¥è°ç¨æå¡ãè¿æ¥ä»¥è°ç¨Context.bindService()æ¹æ³å»ºç«ï¼ä»¥è°ç¨ Context.unbindService()å ³éãå¤ä¸ªå®¢æ·ç«¯å¯ä»¥ç»å®è³åä¸ä¸ªæå¡ãå¦ææå¡æ¤æ¶è¿æ²¡æå è½½ï¼bindService()ä¼å å è½½å®ã
stopService(mService ); //停止服务
Intent mService = new Intent(this, mService.class);
startService(mService ); //启动服务