91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2020-10-13 15:03:49 來源:腳本之家 閱讀:125 作者:碎碎想 欄目:移動開發

前言

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

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

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

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

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

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

這確實是一個問題。

解決方法

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

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

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

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

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

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

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

總結

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

璧山县| 丽江市| 昭觉县| 阿巴嘎旗| 辽源市| 芜湖县| 江川县| 阳西县| 彩票| 丁青县| 霍邱县| 富顺县| 岱山县| 乌苏市| 巴林左旗| 水富县| 巧家县| 张北县| 闻喜县| 旌德县| 莲花县| 库伦旗| 呼伦贝尔市| 洞头县| 安泽县| 玛纳斯县| 中西区| 宾川县| 永福县| 缙云县| 通州区| 贵定县| 丰顺县| 五原县| 大渡口区| 高唐县| 清涧县| 锡林郭勒盟| 商都县| 芜湖县| 云南省|