當乙個
activity
繫結到乙個
service
上時,它負責維護
service
例項的引用,允許你對正在執行的
service
進行一些方法呼叫。
activity
能進行繫結得益於
service
的介面。為了支援
service
的繫結,實現
onbind
方法如下所示:
private final ibinder binder = new mybinder();
@override
public ibinder onbind(intent intent)
public class mybinder extends binder
}service
和activity
的連線可以用
serviceconnection
來實現。你需要實現乙個新的
serviceconnection
,重寫onserviceconnected
和onservicedisconnected
方法,一旦連線建立,你就能得到
service
例項的引用。
// reference to the service
private myservice servicebinder;
// handles the connection between the service and activity
private serviceconnection mconnection = new serviceconnection()
public void onservicedisconnected(componentname classname)
};執行繫結,呼叫
bindservice
方法,傳入乙個選擇了要繫結的
service
的intent
(顯式或隱式)和乙個你實現了的
serviceconnection
例項,如下的框架**所示:
@override
public void oncreate(bundle icicle)
一旦service
物件找到,通過
onserviceconnected
處理函式中獲得
servicebinder
物件就能得到它的公共方法和屬性。
android
應用程式一般不共享記憶體,但在有些時候,你的應用程式可能想要與其它的應用程式中執行的
service
互動。
你可以使用廣播
intent
或者通過用於啟動
service
的intent
中的bundle
來達到與執行在其它程序中的
service
互動的目的。如果你需要更加緊密的連線的話,你可以使用
aidl
讓service
跨越程式邊界來實現繫結。
aidl
定義了系統級別的
service
的介面,來允許
android
跨越程序邊界傳遞物件。
aidl
的定義將在第
11章中覆蓋。
從網路接手server 2 ssh到server
1 防火牆開放22埠 sudo ufw allow 22 開放22埠 sudo ufw status 檢視ufw狀態 2 連線到server ssh server的使用者名稱 server主機名 server主機名我連不了,我用ip才連上去 sftp server的使用者名稱 server主機名 其...
繫結Enum到DropDownList控制項的方法
有時,需要將乙個列舉型別繫結到dropdownlist供使用者選擇,這主要是enum.getnames和enum.getvalues的使用。方法如下 dropdownlist.datasource enum.getnames typeof yourenumtype dropdownlist.data...
繫結資料到ListView
listview1.items.clear 刪除所有元素 listview1.items.remove listview1.selecteditems 0 刪除行 code private void button1 click object sender,eventargs e 取值賦值 listv...