我有一个关于在 android 上构建基于 UDP 的聊天客户端的学校作业。现在,我的第一个想法是创建一个启动服务的活动,该服务处理所有的网络,活动的所有输入和输出。却发现了一个问题。
如果我尝试启动服务以便 startCommand 函数启动并调用 socket.receive 以开始接收网络消息,我无法绑定服务以便我可以将输入从活动传递到服务(输入 = 用户的消息想发送)。它只是挂起并引发 ANR 异常。如果我只绑定它(这样接收永远不会被调用),它就像一个魅力。
也许我没有正确解决这个问题。还是应该在阻塞接收呼叫时绑定服务?