android IPC之binder通訊機制

來源:互聯網
上載者:User

Binder通訊機制說來簡單,但是在使用的過程的遇到了一些問題,最後終於解決了,在這總結一下,一併分享給大家:
1、要使用Binder通訊,首先要定義介面,然後實現服務端BnInterface***和用戶端BpInterface***,說到底一個是把參數解包,一個是把參數打包。
2、服務端要能夠接收Binder調用請求,要具備兩個條件:一個是實現Bn介面,另一個是調用IPCProcess()-》self->startThreadPool()
IPCThread()->Self->joinThreadPool();
這兩句話非常關鍵,因為他啟動了一個線程在後台,負責讀取Binder介面調用的請求,然後調用具體介面,如果沒有這個線程,你的服務是收不到調用請求的,用戶端會調用失敗(died)。
對於用戶端也一樣,如果要支援回調,也必須要啟動讀取Binder調用的線程,否則,回調失敗。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.