Android AIDL中Map參數(shù)傳遞的問(wèn)題詳解
前言
AIDL是一個(gè)縮寫(xiě),全稱是Android Interface Definition Language,也就是Android接口定義語(yǔ)言。
我們都知道aidl是支持map作為參數(shù)傳遞的,但前提是map不能是泛型并且數(shù)據(jù)類(lèi)型必須是aidl所支持的String,int等的Map參數(shù):
interface IMyAidl {
void test(Map<String,String> datas);
}
本以為這樣寫(xiě)就可以正常往下進(jìn)行了,但是這樣會(huì)有錯(cuò),拋出如下異常:

上述錯(cuò)誤中首先說(shuō)明不知道如何創(chuàng)建Map<K,V>container,但是aidl肯定是支持map參數(shù)傳遞的。最后還指出,這是一個(gè)不知道的類(lèi)型。
這確實(shí)是一個(gè)問(wèn)題。
解決方法
我在網(wǎng)上查了一些資料,發(fā)現(xiàn)很少介紹這一方面的。最后在不斷的嘗試中發(fā)現(xiàn)如下寫(xiě)法能解決:
interface IMyAidl {
void test(in Map datas);
}
這里需要注意,如果map前面沒(méi)有in修飾符,也會(huì)拋出異常:

所以在使用的時(shí)候map必須聲明為in、out或者inout。接下來(lái)就能直接使用了。
因?yàn)榫W(wǎng)上對(duì)于此問(wèn)題記錄太少,所以我寫(xiě)出來(lái)解答與我一樣遇到此問(wèn)題的人。
備注:至于為什么這樣使用,目前還不太清楚,請(qǐng)多指教。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Android之EditText控制禁止輸入空格和回車(chē)
本文主要介紹了Android中使用EditText控制禁止輸入空格和回車(chē)的實(shí)現(xiàn)代碼。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-04-04
Android下拉列表(Spinner)效果(使用C#和Java分別實(shí)現(xiàn))
這篇文章主要介紹了Android下拉列表(Spinner)效果(使用C#和Java分別實(shí)現(xiàn)),本文直接給出效果圖和兩種語(yǔ)言的實(shí)現(xiàn)代碼及布局代碼,需要的朋友可以參考下2015-06-06
Activity isFinishing()判斷Activity的狀態(tài)實(shí)例
下面小編就為大家分享一篇Activity isFinishing()判斷Activity的狀態(tài)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-03-03
FrameLayout和Fragment處理Android應(yīng)用UI布局實(shí)例
這篇文章主要介紹了FrameLayout和Fragment處理Android應(yīng)用UI布局實(shí)例,安卓3.0以后Fragment的出現(xiàn)為多尺寸屏幕的適配帶來(lái)了方便,需要的朋友可以參考下2016-02-02
Android 中ImageView的ScaleType使用方法
這篇文章主要介紹了Android 中ImageView的ScaleType使用方法的相關(guān)資料,希望通過(guò)本能幫助到大家,需要的朋友可以參考下2017-09-09
Android 文件存儲(chǔ)與SharedPreferences存儲(chǔ)方式詳解用法
SharedPreferences是安卓平臺(tái)上一個(gè)輕量級(jí)的存儲(chǔ)類(lèi),用來(lái)保存應(yīng)用的一些常用配置,比如Activity狀態(tài),Activity暫停時(shí),將此activity的狀態(tài)保存到SharedPereferences中;當(dāng)Activity重載,系統(tǒng)回調(diào)方法onSaveInstanceState時(shí),再?gòu)腟haredPreferences中將值取出2021-10-10
Android中退出確認(rèn)框的實(shí)現(xiàn)代碼
這篇文章主要介紹了Android中退出確認(rèn)框的實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下2017-05-05

