【问题标题】:Maintain TCP Connection in background after opening other application Windows phone 8打开其他应用程序 Windows phone 8 后在后台保持 TCP 连接
【发布时间】:2014-02-05 01:49:33
【问题描述】:

我正在使用MQTT 服务器TCP Connection 来开发我的Chat Application with Image Attachments

Text Chat 正在工作 fine 但是当涉及到 image attachments 时,连接丢失并转到 Application_Deactivated 事件。

我尝试在Application_ActivatedApplication_Launching 事件中将其重新连接,但即使这样也不起作用。

是否有任何解决方案可以在整个应用程序后台保持TCP connection 而不会丢失连接?

实际上,在谷歌搜索解决方案时,我遇到了后台代理,这对我有用吗?如果是这样,我可以获得一个完美的教程链接吗?

【问题讨论】:

    标签: c# windows windows-phone-8 tcp mqtt


    【解决方案1】:

    简短的回答是,当用户执行某些操作以离开您的应用程序(无论用户退出应用程序还是启动其他应用程序)时,您将无法维持 TCP 会话。您应该查看服务器支持通过 new TCP 会话恢复现有用户聊天会话的 API。我不知道 MQTT 提供更多关于如何实现这种魔力的细节。但是一旦你弄明白了,你会想要使用该机制来尝试在 Application_Launching 和 Application_Activated 事件中恢复 现有 聊天会话。

    BackgroundAgent 的运行频率不能超过每 30 分钟一次(调试时除外),这样的频率不足以使 TCP 会话保持活动状态。

    【讨论】:

    • 但是假设我断开聊天并连接到相册。如果用户收到任何聊天,他不会得到那个 ryt?(如果聊天断开)
    • 我会说这是预期的,可取的行为。当您的用户在您的应用程序上超过几分钟未处于活动状态时,您会向其他聊天服务用户“撒谎”。在手机上,由于连接断断续续,您可能会再延长几分钟,但不会无限期地延长。
    • @RealSteel 嗨,钢铁,我也面临同样的问题。但是我们正在重新连接应用程序启动和激活,但问题是在激活时建立连接需要很长时间才能恢复应用程序..你有吗面对这个,你是怎么做到的?..谢谢你的建议..
    猜你喜欢
    • 1970-01-01
    • 2014-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多