如何将android连接到actioncable websocket连接?

我是 Android开发的新手,我正在尝试在我的Android应用程序中添加一个聊天室,由Rail的新动作电缆提供支持.我目前有聊天室使用Firebase工作很酷.但是,我希望Firebase不支持其他功能,因此我想将所有功能都移到我的服务器上.问题是我对android上的websockets知之甚少.

下面是rails浏览器端使用的javascript信息.这没有问题和问题.

hostname = (url) ->
  parser = document.createElement('a')
  parser.href = url
  parser.href = parser.href
  parser.protocol = parser.protocol.replace("http", "ws")
  parser.href

@App = {}
App.cable = Cable.createConsumer hostname("/")

App.messages = App.cable.subscriptions.create "MessagesChannel",
  received: (data) ->
    messages = $('#messages')
    messages.append(data.message)
    messages.scrollTop(messages.height() + 1000)

最佳答案 Actioncable逻辑与其他常见的websocket框架没有太大区别.有很多Android websocket库.

尝试,
https://github.com/codebutler/android-websockets

和,
actioncable的完整文件尚未准备就绪.(https://github.com/rails/rails/issues/22673)

你应该尝试阅读前端actioncable框架(coffeescript)的源文件.
https://github.com/rails/actioncable/blob/master/lib/assets/javascripts/cable/consumer.coffee
https://github.com/rails/actioncable/blob/master/lib/assets/javascripts/cable/subscription.coffee

点赞