我正在编写一个需要启动套接字连接的聊天客户端 Android 应用程序。
目前,我有一个 AsyncTask 启动连接,发送登录请求,解析回复并断开连接。
问题是,我需要无限期地维护连接(只要用户正在使用应用程序)并跨多个活动。
到目前为止我想出的解决方案是创建一个绑定服务来处理套接字连接并为输入和输出流创建独立线程(使用处理程序?)。
我只需要知道两件事:
- 这是一个正确的解决方案,还是服务是一种矫枉过正?(请注意,将来我可能需要在应用程序不在前台时处理通知)
- 如果是这样,我如何发送不同的 IO 线程/任务对应的流 IE 将我从套接字获得的流传递到不同的线程?