gpt4 book ai didi

android - IntentService 连接到服务器监听

转载 作者:行者123 更新时间:2023-11-29 21:03:17 26 4
gpt4 key购买 nike

我编写了一个发送命令行的 IntentService。与我尝试对控制台进行编程的 Activity 有关。该 Activity 的目的是执行“命令提示符”,我可以在其中向服务器发送消息或从服务器接收消息。

服务的行为是:

  1. 连接到服务器
  2. 发送命令行
  3. 获取响应
  4. 检索对用户的响应

主要问题是每次我发送命令行时,服务都必须重新连接到服务器。 (因为每次我启动整个服务时)我怎样才能避免这一步?

我想“保持 Activity 状态”等待命令行发送的服务,而不需要每次执行它的操作时都重新连接。

有什么方法可以让它响应 Action 吗?我的意思是,我启动服务,每次设置它的操作 (setAction) 并放置我想要的行 (putExtra)。那我还要重新启动服务吗?

晚安。明天我会回来:)

提前致谢!

最佳答案

由于其“一次性”设计,在我看来,使用 IntentService 并不是一个好的方法。

如果您不想在每次发送命令时都启动该服务,那么我建议您“绑定(bind)”到一个标准的服务(参见Bound Services)。如果您在 ActivityonResume() 方法中绑定(bind)到 Service 并在 onPause() 中解除绑定(bind),您的Activity 将能够直接调用 Service 中的方法。

当然,您必须在您的 Service 中创建您自己的 worker Thread 来处理涉及您的网络连接的任何工作。如果您需要有关如何执行此操作的任何提示,请查看 source code for IntentService - 它相当简单。

关于android - IntentService 连接到服务器监听,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25345087/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com