2009-09-22 57 views
3

我有這個方法在我的.aidl文件:如何在android aidl文件中返回MyObject的列表?

void getObjects(out List<MyObject> objList); 

但我得到這個錯誤

的src/COM/myCompany中/ mypackage中/ ITestService.aidl:26參數objList(1)未知類型列表objList

如何在.aidl中創建MyObject列表?

謝謝。

+0

導入* MyObject *,即使它在同一個包中。 – bhatt4982

回答

3

步驟:

  1. MyObject來實現Parcable

  2. 在src.com.mycompany創建新MyObject.aidl文件。 mypackage的

    package src.com.mycompany.mypackage; 
        parcelable MyObject; 
    

    原因:您在進程之間傳遞類對象,客戶端進程必須瞭解要傳遞的對象的定義 。

    AIDL編譯器將無法找到我們的自定義MyObject,即使它實現了Parcelable接口。要通知我們實施了AIDL編譯器,我們需要定義一個AIDL文件,聲明類作爲Parcelable

  3. 在ITestService.aidl增加進口statment,

    import src.com.mycompany.mypackage.MyObject 
    

錯誤未知類型列表會被刪除。