在 Android 上,我尝试使用自定义 Intent 和 BroadcastListeners 发送自定义广播消息。我有一些自定义数据,格式为:
List<Hashtable<String,List<String>>> data;
尝试使用时:
intent.putExtra("mydata", data);
我得到错误:
The method putExtra(String, boolean) in the type Intent is not applicable for the arguments (String, List<Hashtable<String,List<String>>>)
查看 Intent 类,有一堆重载 putExtra() 的公共(public)方法。但是,似乎没有一个符合我要发送的数据。
似乎有一个比较通用的方法
putExtra(String name, Bundle value)
但是,我不确定如何将我的数据转换为 Bundle 以使用它。这是正确的做法吗?或者有没有更简单的方法?
最佳答案
您想为 putExtra(String name, Serializable s)
版本设置可序列化。但是,List
是一个不扩展 Serializable
的接口(interface)。尝试将其声明为 ArrayList
。
关于java - 如何在广播 Intent 中正确打包 List<Hashtable<String,List<String>>>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6718410/