代码之家  ›  专栏  ›  技术社区  ›  NickT

通过AIDL从远程服务到应用程序的复杂类型

  •  2
  • NickT  · 技术社区  · 14 年前

    理想情况下,我想发送一个类型的对象

     ArrayList<ArrayList<ASimpleClass>> 
    

    从一个APK中的远程服务到另一个APK中的应用程序。我不确定这是否可能,正如API演示代码所暗示的那样:

    /**
     * This demonstrates the basic types that you can use as parameters
     * and return values in AIDL.
     */
    void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat,
            double aDouble, String aString);
    

    虽然writeto/readfromparcel的自动完成功能表明其他类型是一个选项(尽管read选项与write不匹配)。如果必要的话,我愿意接受公正的审判。如果可能的话,我非常感谢一个指向一些示例代码的指针,或者一种将上述类型转换成远程接口AIDL可以接受的类型的方法。有人能解释一下这个问题吗?

    1 回复  |  直到 14 年前
        1
  •  2
  •   Chris Stratton    14 年前

    http://developer.android.com/reference/android/os/Parcel.html

    如果您想要的不在支持方法列表中,您仍然可以发送它,前提是您编写代码将其转储到一系列支持的类型中,然后在另一端重新生成它。