安卓客户端与服务器端有哪些通信方式,各有什么优缺点,怎么根据项目的实际情况选择啊?
或者有什么相关资料推荐也好.
马上毕业,小白一个,在此先谢谢各位大侠.
安卓客户端与服务器端的通信方法主要有长连接和短连接。
短连接:是指客户端与服务器通讯双方有数据交互时才建立一个连接,数据发送完毕后就断开此连接,如:http协议。基于该协议的框架如:httpclient
长连接:是指客户端与服务器之间始终建立着一个通讯连接,在该连接没有中断之前,客户端与服务器端之间可以随时进行通讯。如:socket协议、即时通讯、推送(服务器定向将消息实时发送至客户端)原理等。
在实际项目中选择短连接(如:httpclient)还是长连接(如:asmack、smack)或第三方推送(如:百度推送、极光推送),这个具体还得根据业务需求来选择,比如:1)短连接:点赞、回复、评论等;2) 长连接:聊天、添加好友、推送系统消息等;3)第三方推送:推送系统消息等。
希望能对你有帮助。
1、最常见是用http协议来实现,socket通讯,比如:创建URL,以及URLConnection/HttpURLConnection对象、设置链接参数、链接到服务器、向服务器写数据、从服务器读取数据等通信。
2、也可以使用Android提供的Apache HttpClient,它是一个开源项目,功能更加完善,为客户端的Http编程提供高效、最新、功能丰富的工具包支持。
3、android.net编程:常常使用此包下的类进行Android特有的网络编程,如:访问WiFi,访问Android联网信息,邮件等功能。