后端被拉来做 Android app,请教各位 Android 大佬

查看 26|回复 1
作者:skai0dev   
前情提要:
服务器和客户端( Android )通过 websocket 通信,接收一些服务器的指令或者发送一些数据,比如服务器发送关机指令客户端关机之类的。
目前客户端 app 是采用的单 activity 的结构,通过 fragment 和 navigation 做导航,采用了 mvvm 架构模式,也用了协程了。
我本来想着写一个 service 然后绑定到 activity 上,负责处理各种消息,但是有一些消息需要与 UI 有交互,所以好像不行。
也想过用 callbackFlow 然后在 viewmodel 里面处理,然后在 fragment 中显示,但是感觉好像也不是很好。
所以就想问一下这种场景的最佳实践是什么?各位大佬能说说思路吗?
另外想问一下,如果通过 websocket 传递数据,是只发送相关的事件(对消息的封装),然后客户端根据事件在具体发送 HTTP 请求获取数据呢?还是直接通过 websocket 发送事件的时候附带数据呢?
hohoho   
不是大佬,说下个人的感觉:
楼主的需求跟 UI 和交互没有太大关系,把 ws 想象成 event bus ,监听服务端事件,获取事件数据(数据小建议放到 ws 中)。
监听事件的逻辑适合放到 view model 里,毕竟是一种数据来源,也可能需要额外的逻辑处理成新的数据。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部