麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統(tǒng) > Android > 正文

android developer tiny share-20170217

2019-11-08 00:22:30
字體:
供稿:網(wǎng)友

今天繼續(xù)講AIDL,講android中如何創(chuàng)建AIDL,包括AIDL的語法,數(shù)據(jù)類型,以及如何生成對應(yīng)的Binder類。

下面是android developer官方的講解:

1.創(chuàng)建 .aidl 文件AIDL 使用簡單語法,使您能通過可帶參數(shù)和返回值的一個或多個方法來聲明接口。 參數(shù)和返回值可以是任意類型,甚至可以是其他 AIDL 生成的接口。您必須使用 java 編程語言構(gòu)建 .aidl 文件。每個 .aidl 文件都必須定義單個接口,并且只需包含接口聲明和方法簽名。默認(rèn)情況下,AIDL 支持下列數(shù)據(jù)類型:

Java 編程語言中的所有原語類型(如 int、long、char、boolean 等等)StringCharSequenceListList 中的所有元素都必須是以上列表中支持的數(shù)據(jù)類型、其他 AIDL 生成的接口或您聲明的可打包類型。 可選擇將 List 用作“通用”類(例如,List<String>)。另一端實際接收的具體類始終是 ArrayList,但生成的方法使用的是 List 接口。Map

Map 中的所有元素都必須是以上列表中支持的數(shù)據(jù)類型、其他 AIDL 生成的接口或您聲明的可打包類型。 不支持通用 Map(如 Map<String,Integer> 形式的 Map)。 另一端實際接收的具體類始終是 HashMap,但生成的方法使用的是 Map 接口。

您必須為以上未列出的每個附加類型加入一個 import 語句,即使這些類型是在與您的接口相同的軟件包中定義。

定義服務(wù)接口時,請注意:方法可帶零個或多個參數(shù),返回值或空值。所有非原語參數(shù)都需要指示數(shù)據(jù)走向的方向標(biāo)記。可以是 in、out 或 inout(見以下示例)。原語默認(rèn)為 in,不能是其他方向。注意:您應(yīng)該將方向限定為真正需要的方向,因為編組參數(shù)的開銷極大。.aidl 文件中包括的所有代碼注釋都包含在生成的 IBinder 接口中(import 和 package 語句之前的注釋除外)只支持方法;您不能公開 AIDL 中的靜態(tài)字段。以下是一個 .aidl 文件示例:
// IRemoteService.aidlpackage com.example.android;// Declare any non-default types here with import statements/** Example service interface */interface IRemoteService {    /** Request the PRocess ID of this service, to do evil things with it. */    int getPid();    /** Demonstrates some basic types that you can use as parameters     * and return values in AIDL.     */    void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat,            double aDouble, String aString);}只需將您的 .aidl 文件保存在項目的 src/ 目錄內(nèi),當(dāng)您開發(fā)應(yīng)用時,SDK 工具會在項目的 gen/ 目錄中生成 IBinder 接口文件。生成的文件名與 .aidl 文件名一致,只是使用了 .java 擴展名(例如,IRemoteService.aidl 生成的文件名是 IRemoteService.java)。如果您使用 Android Studio,增量編譯幾乎會立即生成 Binder 類。 如果您不使用 Android Studio,則 Gradle 工具會在您下一次開發(fā)應(yīng)用時生成 Binder 類 — 您應(yīng)該在編寫完 .aidl 文件后立即用 gradle assembleDebug (或 gradle assembleRelease)編譯項目,以便您的代碼能夠鏈接到生成的類。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 欧美成人一级 | 国产精品一二区 | 女人解衣喂奶电影 | 国产一级在线看 | av电影免费在线 | 最近免费观看高清韩国日本大全 | 国产日韩三区 | 久啪视频| 亚洲国产精品久久久久久久 | 青青草成人免费视频在线 | 欧美在线 | 亚洲 | 成人小视频免费在线观看 | 九色com| 久久综合综合久久 | 成人午夜精品久久久久久久蜜臀 | 黄在线 | 亚洲第一成人在线视频 | 国产chinesehd精品91 | 羞羞视频免费视频欧美 | 黄色大片免费看 | 久久国产一级片 | 亚洲精品a级 | 国产中文99视频在线观看 | 免费a视频 | 欧美成人se01短视频在线看 | 国产人成精品一区二区三 | 久久精品日产第一区二区三区 | 宅男噜噜噜66国产免费观看 | 国产亚洲精品成人 | 毛片在线看免费 | 九九午夜 | 亚洲第九十九页 | 永久av在线免费观看 | 国产一级毛片不卡 | 一级大片久久 | 蜜桃传媒视频麻豆第一区免费观看 | 欧美性生活区 | 久久精品国产99久久久古代 | 欧美成人一区二区三区 | 91av久久| 久久久成人免费视频 |