首页 > 解决方案 > 适用于 Android 的动作电缆客户端

问题描述

我想订阅特定频道的行动电缆。任何适用于 android 的 actioncable 库或客户端?我正在使用一个库https://github.com/hosopy/actioncable-client-java但无法连接动作电缆。

标签: androidactioncable

解决方案


1.与导轨动作电缆路径连接

private void start() {
        try {
            Request request = new Request.Builder().url("ws://"+Constants.HOST_ADDRESS +"/cable").addHeader("auth-token", AUTH_TOKEN).build();
            EchoWebSocketListener listener = new EchoWebSocketListener();
            WebSocket ws = client.newWebSocket(request, listener);
            client.dispatcher().executorService().shutdown();
            client = new OkHttpClient();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

2.订阅频道

private final class EchoWebSocketListener extends WebSocketListener {
        @Override
        public void onOpen(WebSocket webSocket, Response response) {
            webSocket.send("{\"command\":\"subscribe\", \"identifier\":\"{\\\"channel\\\":\\\"CommunicationsChannel\\\"}\"}");
        @Override
        public void onMessage(WebSocket webSocket, String text) {
            try {
                JSONObject jsonBot = new JSONObject(text);
                }
        }
}

WebSocket 监听器可以接收到 Rails 应用程序通过“CommunicationsChannel”发送的所有消息,您将能够在“onMessage”函数中接收它

检查此资源以获取其他可操作的 android 实现:

https://www.xploralab.com/?s=action+cable


推荐阅读