我必须序列化一些与WebRTC相关的省道对象,以便通过信令通道发送它们。例如,我必须对RtcSessionDescription和RtcIceCandidate实例进行编码。这两个类都提供了在给定映射的上下文中构建它们的构造函数,但没有人提供从原始对象创建这样一个map的方法。
如何生成字符串?我必须绕道绕过地图对象吗?
例如:
RtcSessionDescription -> Map -> String -(send_over_signalingChannel)-> String -> Map -> RtcSessionDescription
发布于 2014-03-02 15:30:31
最后,我找到了一个解决方案(正如Günther Z chbauer建议的那样使用dart:convert ):
RtcSessionDescription original = ...;
//serialize
final String serialized_sdp = JSON.encode({
'sdp':original.sdp,
'type':original.type
});
//decode
final Map sdp_map = JSON.decode(serialized_sdp);
RtcSessionDescription sdp = new RtcSessionDescription(sdp_map);发布于 2014-02-10 15:50:23
您可以使用dart:convert包轻松地在Map和String之间进行转换。
https://www.dartlang.org/articles/json-web-service/
不过,我不知道RtcSessionDescription <->地图。
也请参阅这个问题:Can I automatically serialize a Dart object to send over a Web Socket?
https://stackoverflow.com/questions/21681565
复制相似问题