首页 文章

Http或TCP / IP套接字,哪个更适合Android应用?

提问于
浏览
-1

在问我的问题之前,我想告诉你我在哪个阶段 . 我已经在我的Android应用程序上实现了TCP / IP套接字,它工作正常(到目前为止......) . 客户端(我的Android应用程序)端和服务器端之间的连接是 short connection ,这是用户提交信息时的新线程将创建消息,在服务器端,服务器收到消息后,服务器将响应"RCVD",之后将关闭套接字,然后关闭连接 . 我的应用程序在用户端和服务器端之间有很多交互,因此它在客户端和服务器之间做了很多 connectdisconnect ,所以我总是担心套接字通信会耗尽手机电池并且性能会受到影响 .

最近我在github上找到 OkHttp ,很多人建议使用它 . 我不太熟悉Http,只知道它是更高级别的网络协议 .

谁能告诉我哪种方式更好?哪个更有效地交换数据(Object / Json / String)和媒体(Images)?哪个更快,哪个使用更少的电池?

非常感谢 .

1 回答

  • 0

    基本上,Http和tcp socket之间的比较是没有意义的,但在你的情况下它真的很重要 . 如您所述,在您的tcp套接字方式中,您可以在每次从服务器接收新推送时创建新连接,这不是那么高效,如果您使用OkHttp,当您的客户端与同一服务器交换消息时,将重用相同的tcp套接字每一次,而不是一个新的 .

    顺便说一下,至于推送服务,使用XMPP(over tcp)可能会更好,因为Http没有针对这种短消息交换模型进行优化(你应该在服务器端使用一些额外的策略来保持连接不被关闭),但您可能必须处理有关XMPP服务器和客户端的一些实现 .

相关问题