Repository: incubator-weex Updated Branches: refs/heads/0.16-dev 42285f337 -> 51ed22dcb
+ [doc] update doc of devtools android Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/9db8054d Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/9db8054d Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/9db8054d Branch: refs/heads/0.16-dev Commit: 9db8054d405ae99ef25be3c4639a3ec12fe72289 Parents: 3b9b5a5 Author: misakuo <misa...@apache.org> Authored: Fri Jul 21 15:29:34 2017 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Jul 21 15:29:34 2017 +0800 ---------------------------------------------------------------------- .../advanced/integrate-devtool-to-android.md | 86 +++++++++++++++++++- 1 file changed, 84 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/9db8054d/doc/source/cn/references/advanced/integrate-devtool-to-android.md ---------------------------------------------------------------------- diff --git a/doc/source/cn/references/advanced/integrate-devtool-to-android.md b/doc/source/cn/references/advanced/integrate-devtool-to-android.md index 05a7f18..c26c814 100644 --- a/doc/source/cn/references/advanced/integrate-devtool-to-android.md +++ b/doc/source/cn/references/advanced/integrate-devtool-to-android.md @@ -19,7 +19,7 @@ Weex Devtools è½å¤æ¹ä¾¿è°è¯ Weex 页é¢ï¼ä½æ¤åè½ç¦»ä¸å¼ Native ç ```gradle dependencies { - compile 'com.taobao.android:weex_inspector:0.8.0.0' + compile 'com.taobao.android:weex_inspector:${version}' } ``` @@ -29,7 +29,7 @@ Weex Devtools è½å¤æ¹ä¾¿è°è¯ Weex 页é¢ï¼ä½æ¤åè½ç¦»ä¸å¼ Native ç <dependency> <groupId>com.taobao.android</groupId> <artifactId>weex_inspector</artifactId> - <version>0.8.0.0</version> + <version>${version}</version> <type>pom</type> </dependency> ``` @@ -82,6 +82,7 @@ Weex Devtools è½å¤æ¹ä¾¿è°è¯ Weex 页é¢ï¼ä½æ¤åè½ç¦»ä¸å¼ Native ç | weex sdk | weex inspector | Debugger Server | |----------|----------------|-----------------| +| 0.13+ | 0.12+ | 0.2.39+ | | 0.8.0.1+ | 0.0.8.1+ | 0.2.39+ | | 0.7.0+ | 0.0.7.13 | 0.2.38 | | 0.6.0+ | 0.0.2.2 | - | @@ -269,3 +270,84 @@ Devtools æ©å±äº [Chrome Debugging Protocol](https://developer.chrome.com/devt å·²ç¥çåå å¦ä¸ï¼ * å¤çº¿ç¨æä½ç½ç»è¿æ¥å¼èµ·ï¼å¨é¢ç¹çå³æå³è¿æ¶å®¹æ触åãå¨ 0.0.7.1 çæ¬å·²ä¿®å¤ã + +## æ³¨å ¥èªå®ä¹WebSocket Client +ç®åInspector以åå°çæ¹å¼å¨æè°ç¨äºokhttp-wsåºä¸çç¸å ³ä»£ç ï¼å¯ä»¥å ¼å®¹çokhttpä¸okhttp-wsçæ¬ä¸ºï¼ +- okhttp, okhttp-ws 2.7.5çæ¬ä»¥ä¸ +- okhttp3, okhttp3-ws 3.5çæ¬ä»¥ä¸ + +å¦æ客æ·ç«¯ä¸éæççæ¬ä¸ä¸è¿°çæ¬ä¸å¹é ï¼åå¯ä»¥ä½¿ç¨`WeexInspector.overrideWebSocketClient`æ¹æ³æ¥æ³¨å ¥èªå®ä¹çWebSocketå®ç°ï¼ç¤ºä¾ï¼ +```java + + public class CustomWebSocketClient implements IWebSocketClient { + + private WebSocket ws; + + @Override + public boolean isOpen() { + return ws != null; + } + + @Override + public void connect(String wsAddress, final WSListener listener) { + OkHttpClient okHttpClient = new OkHttpClient(); + okHttpClient.setConnectTimeout(5, TimeUnit.SECONDS); + okHttpClient.setReadTimeout(5, TimeUnit.SECONDS); + okHttpClient.setWriteTimeout(5, TimeUnit.SECONDS); + + Request request = new Request.Builder().url(wsAddress).build(); + WebSocketCall webSocketCall = WebSocketCall.create(okHttpClient, request); + webSocketCall.enqueue(new WebSocketListener() { + @Override + public void onOpen(WebSocket webSocket, Request request, Response response) throws IOException { + ws = webSocket; + listener.onOpen(); + } + + @Override + public void onMessage(BufferedSource payload, WebSocket.PayloadType type) throws IOException { + if (WebSocket.PayloadType.TEXT == type) { + listener.onMessage(payload.readUtf8()); + } + } + + @Override + public void onPong(Buffer payload) { + //ignore + } + + @Override + public void onClose(int code, String reason) { + listener.onClose(); + } + + @Override + public void onFailure(IOException e) { + listener.onFailure(e); + } + }); + } + + @Override + public void close() { + if (ws != null) { + try { + ws.close(CloseCodes.NORMAL_CLOSURE, "Normal closure"); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + @Override + public void sendMessage(int requestId, String message) { + if (ws != null) { + try { + ws.sendMessage(WebSocket.PayloadType.TEXT, new Buffer().writeString(message, Charset.defaultCharset())); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } +```