适用于 Android 的动作电缆客户端

Posted

技术标签:

【中文标题】适用于 Android 的动作电缆客户端【英文标题】:Action cable client for android 【发布时间】:2019-01-10 01:15:37 【问题描述】:

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

【问题讨论】:

您是否检查过问题是否不是库,而是其他问题,例如缺少访问凭据、服务器停机或其他任何会阻止库到达端点并与之交互的问题? @acarlstein 服务器已启动并运行, 【参考方案1】:

1.与rails动作电缆路径连接

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

【讨论】:

以上是关于适用于 Android 的动作电缆客户端的主要内容,如果未能解决你的问题,请参考以下文章

使用适用于 android 的字节播放声音

适用于 Android 和 iOS 的基于 websocket 的 MQTT

从适用于 Android 的 USB RFID 阅读器读取数据

如何在 dart 中实现适用于移动设备和 Web 的 http 客户端?

自动化测试用例适用于 appium 命令行工具,但不适用于桌面客户端

Socket.io 适用于桌面 safari 和 chrome,但不适用于移动设备