Android介面描述語言

來源:互聯網
上載者:User

AIDL:Android Interface Definition Language,即Android介面描述語言。

Android系統中的進程之間不能共用記憶體,因此,需要提供一些機制在不同進程之間進行資料通訊。

  為了使其他的應用程式也可以訪問本應用程式提供的服務,Android系統採用了遠端程序呼叫(Remote Procedure Call,RPC)方式來實現。與很多其他的基於RPC的解決方案一樣,Android使用一種介面定義語言(Interface Definition Language,IDL)來公開服務的介面。我們知道4個Android應用程式組件中的3個(Activity、Broadcast和Content Provider)都可以進行跨進程訪問,另外一個Android應用程式組件Service同樣可以。因此,可以將這種可以跨進程訪問的服務稱為AIDL(Android Interface Definition Language)服務。
編輯本段
建立AIDL服務的步驟

  建立AIDL服務要比建立普通的服務複雜一些,具體步驟如下:
  (1)在Eclipse Android工程的Java包目錄中建立一個副檔名為aidl的檔案。該檔案的文法類似於Java代碼,但會稍有不同。詳細介紹見執行個體的內容。
  (2)如果aidl檔案的內容是正確的,ADT會自動產生一個Java介面檔案(*.java)。
  (3)建立一個服務類(Service的子類)。
  (4)實現由aidl檔案產生的Java介面。
  (5)在AndroidManifest.xml檔案中配置AIDL服務,尤其要注意的是,<action>標籤中android:name的屬性值就是用戶端要引用該服務的ID,也就是Intent類的參數值。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.