@Override
public void setContainerResult(String uniqueId, Map result) {
if (result == null) {
Debuger.exception("setContainerResult result is null");
return;
}
if (!(result instanceof HashMap)) {//当不为HashMap
result = new HashMap();//此处result变成空的Map
result.putAll(result);
}
boolean done = false;
for (Map.Entry<IFlutterViewContainer, IContainerRecord> entry : mRecords.entrySet()) {
if (TextUtils.equals(uniqueId, entry.getValue().uniqueId())) {
entry.getKey().setBoostResult((HashMap) result);
done = true;
break;
}
}
if (!done) {
Debuger.exception("setContainerResult can not find uniqueId:" + uniqueId);
}
}
当result不为HashMap时会变成空的Map,详见注释