zyx709401的博客

不进则退。

android 存储方式——Http

Http

http协议:应用层协议,并且http协议是基于tcp连接的,主要解决的是如何包装协议的

tcp协议:运输层协议,通常也叫做tcp/ip协议,主要解决数据如何在网络中传输

udp协议:运输层协议,用户数据报协议,不可靠的协议,只负责把应用层的协议的数据传送到ip层的数据报,而不管数据是否到达。

Tcp/ip连接:

第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 
握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭 
连接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”。

Http连接:

HTTP协议是建立在TCP协议之上的一种应用,HTTP连接使用的是“请求—响应”的方式,不仅在请求时需要先建立连接,而且需要客户端向服务器发出请求后,服务器端才能回复数据。在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。由于HTTP在每次请求结束后都会主动释放连接,因此HTTP连接是一种“短连接”,要保持客户端程序的在线状态,需要不断地向服务器发起连接请求。通常的做法是即时不需要获得任何数据,客户端也保持每隔一段固定的时间向服务器发送一次“保持连接”的请求,服务器在收到该请求后对客户端进行回复,表明知道客户端“在线”。若服务器长时间无法收到客户端的请求,则认为客户端“下线”,若客户端长时间无法收到服务器的回复,则认为网络已经断开。 
清单文件中添加权限

TCP/IP协议和Http协议之间的关系:

TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据,而socket则是对TCP/IP协议的封装和应用(程序员层面上)。实际上http协议就是建立在tcp/ip协议之上的。

“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如 果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也 可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”

android 中使用http需要的权限

<uses-permission android:name="android.permission.INTERNET" />

HTTP规范规定两种请求方法可以包含内容实体:POST和PUT。

GET请求方式是通过把参数键值对附加在url后面来传递的,是文本方式的,参数直接暴露在浏览器的地址栏中,安全性相对较弱。

POST方式就传输方式,将参数打包在http报头中传输,可以是二进制的,不会暴露在浏览器的地址栏中,相当安全,不过相当于GET请求方式,参数获取会变慢,处理效率也会随之降低。

android 网络状态监听

ConnectivityManager cm=(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);  
       NetworkInfo info=cm.getActiveNetworkInfo();  
       if(info!=null){  
           Toast.makeText(MainActivity.this, "连网正常"+info.getTypeName(), Toast.LENGTH_SHORT).show();  
       }else{  
           Toast.makeText(MainActivity.this, "未连网", Toast.LENGTH_SHORT).show();  
       }  

google 推荐android使用okhttp,okhttp较好的封装了http的请求,同时支持https以及实现了较简单的dns适配器。

关于okhttp还有一个二次封装的http框架,retrofit。它使用起来更加方便。 

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zyx709401/article/details/79959566
上一篇Android数据存储----ContentProvider
下一篇仓储金融----RFID技术
想对作者说点什么? 我来说一句

android数据存储方式大全

2011年05月24日 63KB 下载

没有更多推荐了,返回首页

关闭
关闭