最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android AIDL中Map參數(shù)傳遞的問題詳解

 更新時(shí)間:2017年12月11日 12:03:42   作者:碎碎想  
這篇文章主要給大家介紹了關(guān)于Android AIDL中Map參數(shù)傳遞問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友下面來一起看看吧。

前言

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

我們都知道aidl是支持map作為參數(shù)傳遞的,但前提是map不能是泛型并且數(shù)據(jù)類型必須是aidl所支持的String,int等的Map參數(shù):

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

本以為這樣寫就可以正常往下進(jìn)行了,但是這樣會有錯(cuò),拋出如下異常:

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

這確實(shí)是一個(gè)問題。

解決方法

我在網(wǎng)上查了一些資料,發(fā)現(xiàn)很少介紹這一方面的。最后在不斷的嘗試中發(fā)現(xiàn)如下寫法能解決:

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

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

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

因?yàn)榫W(wǎng)上對于此問題記錄太少,所以我寫出來解答與我一樣遇到此問題的人。

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

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

最新評論

温泉县| 大安市| 怀化市| 乾安县| 舞阳县| 陆良县| 板桥市| 黄龙县| 手游| 封丘县| 巩义市| 明光市| 宁波市| 宝山区| 广平县| 广灵县| 蓝山县| 黄浦区| 沭阳县| 桑植县| 安新县| 称多县| 张家川| 洪湖市| 芜湖县| 荃湾区| 鄱阳县| 三江| 罗源县| 承德县| 武穴市| 吉木萨尔县| 德惠市| 灌阳县| 宁蒗| 大田县| 水城县| 黑河市| 蒲江县| 吴桥县| 芮城县|