目前,我正在尝试开发Android移动/穿戴应用程序,并且遇到了一个问题,我需要将Hashmap中包含的数据从移动设备发送到穿戴设备。我查看了Android开发人员指南,似乎必须使用DataMap,但是对于如何将HashMap数据存储在DataMap中以及如何在穿戴设备上正确检索信息,我仍然迷失了。
如果有人可以创建此过程的示例,或为我提供有关如何执行此操作的示例,将不胜感激。
最佳答案
这取决于您在HashMap
中具有哪种类型,但是假设您具有HashMap<String, String>
,则只需要遍历所有值并将其复制到DataMap
中即可。
public static DataMap toDataMap(HashMap<String, String> hashMap) {
DataMap dataMap = new DataMap();
for (Map.Entry<String, String> entry : hashMap.entrySet()) {
dataMap.putString(entry.getKey(), entry.getValue());
}
return dataMap;
}
然后再从
HashMap
创建DataMap
public static HashMap<String, String> fromDataMap(DataMap dataMap) {
HashMap<String, String> hashMap = new HashMap<String, String>();
for (String key : dataMap.keySet()) {
hashMap.put(key, dataMap.getString(key));
}
return hashMap;
}
当然,请记住不要在生成的
DataMap
中存储任何其他内容,因为您可能会覆盖现有键之一。因此,如果要发送其他任何内容,则应通过在另一个DataMap
上使用putDataMap (String key, DataMap value)方法将该DataMap
嵌套在另一个内部。