国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android AIDL中Map參數傳遞的問題詳解

2019-10-22 18:20:42
字體:
來源:轉載
供稿:網友

前言

AIDL是一個縮寫,全稱是Android Interface Definition Language,也就是Android接口定義語言。

我們都知道android/290194.html">aidl是支持map作為參數傳遞的,但前提是map不能是泛型并且數據類型必須是aidl所支持的String,int等的Map參數:

interface IMyAidl { void test(Map<String,String> datas);}

本以為這樣寫就可以正常往下進行了,但是這樣會有錯,拋出如下異常:

aidl傳遞map,android,aidl,map,aidl參數

上述錯誤中首先說明不知道如何創建Map<K,V>container,但是aidl肯定是支持map參數傳遞的。最后還指出,這是一個不知道的類型。

這確實是一個問題。

解決方法

我在網上查了一些資料,發現很少介紹這一方面的。最后在不斷的嘗試中發現如下寫法能解決:

interface IMyAidl { void test(in Map datas);}

這里需要注意,如果map前面沒有in修飾符,也會拋出異常:

aidl傳遞map,android,aidl,map,aidl參數

所以在使用的時候map必須聲明為in、out或者inout。接下來就能直接使用了。

因為網上對于此問題記錄太少,所以我寫出來解答與我一樣遇到此問題的人。

備注:至于為什么這樣使用,目前還不太清楚,請多指教。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昆山市| 齐齐哈尔市| 建昌县| 永顺县| 麻栗坡县| 固阳县| 沾益县| 咸阳市| 鸡西市| 长寿区| 宁强县| 蕉岭县| 柳州市| 宜春市| 海伦市| 阿巴嘎旗| 丹阳市| 姜堰市| 曲麻莱县| 高雄县| 姚安县| 密山市| 东丽区| 曲靖市| 朝阳县| 新晃| 册亨县| 民丰县| 宜川县| 杂多县| 宁津县| 丹棱县| 遵义市| 安顺市| 吴川市| 嵊泗县| 河北区| 武穴市| 皮山县| 临泉县| 吴堡县|