传递Map作为aidl方法的参数

时间:2016-04-11 13:00:40

标签: android dictionary android-service aidl

我需要通过AIDL方法传递可伸缩的类型参数。我现在正在使用地图,例如aidl文件中的void notify(in Map payload)。但我想知道这是否是一个好的解决方案?因为Map是一般类型,所以当我与合作伙伴的项目共享此接口时,我应该为其他人指定Map的密钥。

1 个答案:

答案 0 :(得分:1)

AIDL通信交换参数序列化和解除它们。我认为Map不能序列化,因为它取决于它的实现。如果您的键/值类型将被修复,也许您可​​以使用Parcelable类型对Map进行过度分类,然后您必须编写自定义writeToParcel readFromPArcel