繫結本地Service並與之通訊

2021-06-29 07:15:58 字數 2591 閱讀 1960

繫結service需要呼叫

public boolean bindservice (intent

service, serviceconnection

conn, int flags);

傳入乙個

serviceconnection 物件,該物件是乙個介面,例項化時需要實現該介面,它的作用就是獲得service的ibinder物件,通過ibinder物件可以實現與service的通訊。

service的的**:

1

package

com.example.servicetest;23

import

4import

android.content.intent;

5import

android.os.binder;

6import

android.os.ibinder;

7import

android.util.log;89

public

class bindservicetest extends

service 18}

1920

@override

21public

ibinder onbind(intent arg0)

2526

@override

27public

void

oncreate() catch

(interruptedexception e)

42 count++;

4344}45

46}4748

}.start();49}

5051

@override

52public

int onstartcommand(intent intent, int flags, int

startid)

5657

@override

58public

boolean

onunbind(intent intent)

6263

@override

64public

void

ondestroy()

6970 }

元件的**:

1

package

com.example.servicetest;23

import

com.example.servicetest.bindservicetest.mybinder;45

import

android.content.componentname;

6import

android.content.intent;

7import

android.content.serviceconnection;

8import

android.os.bundle;

9import

android.os.ibinder;

10import

11import

android.util.log;

12import

android.view.view;

13import

android.view.view.onclicklistener;

14import

android.widget.button;

15import

android.widget.toast;

1617

public

class mainactivity extends

actionbaractivity

4041

@override

42public

void

onservicedisconnected(componentname name)

4647

};48

49 bindbutton.setonclicklistener(new

onclicklistener()

59});

6061 unbindbutton.setonclicklistener(new

onclicklistener()

7071 unbindservice(conn);//

解除繫結服務

72 isbind = false;73

74}75});

7677 statebutton.setonclicklistener(new

onclicklistener()

86 toast.maketext(mainactivity.this, "" + mbinder.count(), toast.length_short).show();//

通過mbinder獲取service內部的資料

8788}89

});9091}

92 }

Service學習之 繫結服務

1 前面兩章我介紹了服務的生命週期和在服務裡面註冊廣播的好處。那麼現在我們改學習一下如何進行繫結服務。3 那麼如何進行繫結服務呢?需要三個東西,乙個是服務 乙個呼叫的介面 乙個抽取的介面 特殊介紹 這個抽取的介面是編碼習慣抽取出來的,就是你把你這個開啟服務的想要調的所有的方法都放在這個介面裡面,然後...

win10系統繫結本地IP和mac位址

1.按著win鍵 r鍵,輸入cmd 大小寫都一樣 然後按 回車鍵 3.這樣就找到了自己的ip和mac位址 接下來就是繫結自己的ip和mac位址 第二步 先繫結ip 1.找到桌面網路圖示,右擊,選擇屬性 2.會彈出對話方塊 3.看到 乙太網 網路,在右擊 4.找到協議版本ip v4 5.按照圖上面的一...

伺服器遷移,多網域名稱繫結本地80埠,nginx實踐

近期租用伺服器到期,本來租用的兩台本地網伺服器,變更為一台雲伺服器,涉及到 的遷移問題。先來吐槽雲伺服器,網路高峰期,上傳檔案太慢了,1m的包傳了30分鐘都沒搞定,不知道各位有沒有遇到這樣的問題。不講廢話了,開始正題,公司本來有四個網域名稱,對應到兩台伺服器上,現在集中布設到一台伺服器上,按我的理解...