【问题标题】:How to connect to SignalR on Android如何在 Android 上连接到 SignalR
【发布时间】:2024-01-07 14:41:01
【问题描述】:

是否有其他方法可以在不使用 https://github.com/SignalR/java-client 等特定库的情况下通过 SignalR 连接到后端。 正如我所看到的,它有一段时间没有更新并且存在一些重大问题。

我不熟悉 SignalR,但是否可以使用其他 java websockets 库(如 AsyncHttpClient 或 SignalR)连接到 .net SignalR,而 WebSocket 是完全不同的协议?

有这样的问题,但不确定它是否仍然是最新的,因为上一个答案是几年前的Java client to connect to SignalR?

【问题讨论】:

    标签: java android websocket signalr


    【解决方案1】:

    我多次使用 SignalR,没有其他方法可以使用替代库。只有官方的 SignalR 库。您可以围绕这个库制作包装器,并修复一些问题。那它;(

    【讨论】:

      【解决方案2】:

      包装:

          //microsoft signalR
          implementation 'com.microsoft.signalr:signalr:3.0.0'
          implementation group: 'org.slf4j', name: 'slf4j-android', version: '1.7.7'
      

      代码:

       HubConnection hub;
       hub=  HubConnectionBuilder.create("http://yoursite.com/hub")
                          .withTransport(TransportEnum.LONG_POLLING)
                          .build();
       hub.start();
      
       //retrieve response
       hub.on("MathodeName", (param1, param2) -> {
           // your method or statement
       },String.class, String.class);
      
       //send response
       hub.send("AcceptKitchen", param1, param2);
      
       //to stop connection
       hub.stop();
      

      【讨论】: