| <table> |
| </table> |
| <h3>PPB_HostResolver</h3> |
| <table> |
| <tr bgcolor="#77ccff" style="color:white; font-weight: bold;"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">Assumes Threads </td> |
| <td style="font-size: 11px; padding: 5px;">Emscripten </td> |
| <td style="font-size: 11px; padding: 5px;">Web API </td> |
| <td style="font-size: 11px; padding: 5px;">Limitations </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Resolve </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCanonicalName </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetNetAddressCount </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetNetAddress </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| </table> |
| <h3>PPB_NetAddress</h3> |
| <table> |
| <tr bgcolor="#77ccff" style="color:white; font-weight: bold;"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">Assumes Threads </td> |
| <td style="font-size: 11px; padding: 5px;">Emscripten </td> |
| <td style="font-size: 11px; padding: 5px;">Web API </td> |
| <td style="font-size: 11px; padding: 5px;">Limitations </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">CreateFromIPv4Address </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">CreateFromIPv6Address </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetFamily </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">DescribeAsString </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">DescribeAsIPv4Address </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">DescribeAsIPv6Address </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffeecc" style="font-size: 11px; padding: 5px;">GAP (partial) - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| </table> |
| <h3>PPB_NetworkList</h3> |
| <table> |
| <tr bgcolor="#77ccff" style="color:white; font-weight: bold;"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">Assumes Threads </td> |
| <td style="font-size: 11px; padding: 5px;">Emscripten </td> |
| <td style="font-size: 11px; padding: 5px;">Web API </td> |
| <td style="font-size: 11px; padding: 5px;">Limitations </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetCount </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetName </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetType </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetState </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetIpAddress </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetDisplayName </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetMTU </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| </table> |
| <h3>PPB_NetworkMonitor</h3> |
| <table> |
| <tr bgcolor="#77ccff" style="color:white; font-weight: bold;"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">Assumes Threads </td> |
| <td style="font-size: 11px; padding: 5px;">Emscripten </td> |
| <td style="font-size: 11px; padding: 5px;">Web API </td> |
| <td style="font-size: 11px; padding: 5px;">Limitations </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Create </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">UpdateNetworkList </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| </table> |
| <h3>PPB_NetworkProxy</h3> |
| <table> |
| <tr bgcolor="#77ccff" style="color:white; font-weight: bold;"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">PPAPI Method </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">Assumes Threads </td> |
| <td style="font-size: 11px; padding: 5px;">Emscripten </td> |
| <td style="font-size: 11px; padding: 5px;">Web API </td> |
| <td style="font-size: 11px; padding: 5px;">Limitations </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">GetProxyForURL </td> |
| <td style="width: 50px; text-align: center; font-size: 11px; padding: 5px;">x </td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP</td> |
| <td bgcolor="#ffcccc" style="font-size: 11px; padding: 5px;">GAP - No direct equivalent</td> |
| <td style="font-size: 11px; padding: 5px;"> </td> |
| </tr> |
| |
| </table> |
| <h3>PPB_TCPSocket and PPB_UDPSocket</h3> |
| There is not a direct 1:1 mapping for migration. Instead, we have outlined some |
| user scenarios below and what the recommended migration path is. |
| <table> |
| <tr bgcolor="#77ccff" style="color:white; font-weight: bold;"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Use Case</td> |
| <td style="font-size: 11px; padding: 5px;">Recommendations</td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Screen sharing</td> |
| <td style="font-size: 11px; padding: 5px;"> |
| <a href="https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getDisplayMedia"> |
| getDisplayMedia</a> and |
| <a href="https://webrtc.org/">WebRTC</a> ( |
| <a href="https://webrtc.github.io/samples/src/content/getusermedia/getdisplaymedia/"> |
| demo</a>) |
| </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Loading from a |
| local server to minimize bandwidth usage</td> |
| <td style="font-size: 11px; padding: 5px;">XHR, Fetch, Streams, Service Worker, Cache APIs</td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Loading from a |
| local instance of a web app / Connecting to a local instance of a web app</td> |
| <td style="font-size: 11px; padding: 5px;"><a href="https://webrtc.org/">WebRTC</a></td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Chat</td> |
| <td style="font-size: 11px; padding: 5px;"> |
| <a href="https://developer.mozilla.org/ja/docs/Web/API/WebSockets_API">WebSocket</a>* |
| </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Realtime |
| audio/video communication</td> |
| <td style="font-size: 11px; padding: 5px;"><a href="https://webrtc.org/">WebRTC</a></td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Collaboration</td> |
| <td style="font-size: 11px; padding: 5px;"> |
| <a href="https://developer.mozilla.org/ja/docs/Web/API/WebSockets_API">WebSocket</a>* |
| </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Realtime |
| multiplayer games</td> |
| <td style="font-size: 11px; padding: 5px;"> |
| <a href="https://github.com/WICG/web-transport/blob/master/README.md">WebTransport</a>** |
| unless P2P in which case <a href="https://webrtc.org/">WebRTC</a> (or |
| WebTransport over RTCIceTransport) |
| </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Realtime |
| interactive streaming</td> |
| <td style="font-size: 11px; padding: 5px;"> |
| <a href="https://github.com/WICG/web-transport/blob/master/README.md">WebTransport</a>** |
| </td> |
| </tr> |
| |
| <tr bgcolor="#fcfcfc"> |
| <td style="font-weight: bold; font-size: 11px; padding: 5px;">Communicating |
| with legacy server</td> |
| <td style="font-size: 11px; padding: 5px;"> |
| Proxy server or middleware to do protocol conversion. Feedback to |
| <a href="http://bit.ly/network-api-gaps">bit.ly/network-api-gaps</a> |
| </td> |
| </tr> |
| |
| </table> |
| |
| <i>*: Or WebTransport in the future</i><br> |
| <i>**: See <a href="https://chromestatus.com/features#webtransport">chromestatus</a> for |
| availability</i> |