一、Service簡介
Service有local和remote兩種類型。
local主要是用于本地的應用程序之間的調用,remote主要用于不同應用之間的重用,這里用到AIDL IPC機制。 關于AIDL IPC機制可以參閱SDK Dev Guide,很簡單!當然,你要是想完全理解這種機制可能要花費點時間喲,不過還好,我只是用一下,呵呵!~ ~
二、Service與進程
android各個組件之間默認運行在同一個進程之中,它們有各自所在的進程來管理,它們是主線程的一部分而不是系統開啟的線程。
這么說來, 要是 在這些組件中做耗時比較長的操作需要另起線程。
這里需要說明,你可以通過android:process=屬性說明應用組建的所屬進程。
三、遠程Service
先看看文件目錄結構吧
在對應的包下面新建一個AIDL文件,這里是IMusicService.aidl文件。那么ADT會自動的為你生成對應的java源文件。不要以為 IMusicService.aidl多難寫,其實它就是你暴露給外界的接口,只不過我們把他的后綴寫為.aidl而不是.java。
IMusicService.aidl文件:
這樣,我們就可以在應用程序中使用它啦...
Activity中我是這樣做的:
最后,別忘記在manifest.xm文件中聲明:
cmd一下,在命令行中adb shell ps 查看 android 應用程序的 PID 以及進程 ID。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
