--摘自《android高階解密》
*service啟動過程*
第一步:contextimpl到activitymanagerservice的呼叫過程
第二步:activitythread啟動service
1)processrecord主要用來描述執行的應用程式程序的資訊
2)loadedapk是乙個apk檔案的描述類
*service繫結過程*
第一步:contextimpl到ams的呼叫過程
第二步:service的繫結過程
1)幾個與service相關的物件型別
* servicerecord 用於描述乙個service
* processrecord 乙個程序的資訊
* connectionrecord 用於描述應用程式程序和service建立的一次通訊
* intentrecord 用於描述繫結service的intent
2)bindservice方法內部會啟動service
3)servicedispatcher是loadedapk的內部類,innerconnection的connected方法內部會呼叫h的post方法向主線程傳送訊息,並且解決當前應用程式程序和service跨程序通訊的問題
1)iserviceconnection,它是serviceconnection在本地的**,用於解決當前應用程式程序和service跨程序通訊的問題,具體實現為servicedispatcher.innerconnection
Service的繫結過程
摘自 android高階解密 第一步 contextimpl到ams的呼叫過程 第二步 service的繫結過程 1 幾個與service相關的物件型別 servicerecord 用於描述乙個service processrecord 乙個程序的資訊 connectionrecord 用於描述應用...
Service解析(一)啟動和繫結Service
service是四大元件之一,在後台執行,多用來在後台執行耗時操作,servie是執行在主線程中都 public class myservice extends service override public ibinder onbind intent intent override public ...
Service的啟動方式
service的啟動方式 兩種啟動模式,一種是非繫結啟動模式,另一種是繫結啟動模式。一 startservice方式啟動 1 intent intent new intent this,firstservice.class 2 開啟服務 3 startservice intent 二 繫結啟動模式 ...