android客户端与服务端通信.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
android客户端与服务端通信

1. 网络的基础知识 ip:主机在网络中的唯一标识,是一个逻辑地址。表示本机地址 端口:是一个为了便于实现服务器与客户端之间通信所使用的抽象概念。 协议:通讯双方为了完成预先制定好的功能而达成的约定。 TCP/IP网络7层模型:物理层Physical 硬件 、数据链路层DataLink 二进制 、网络层Network IP协议:寻址和路由 、 传输层Transport TCP、UDP协议 、会话层Session 端口 、表示层Presentation、 应用层Application HTTP、FTP、SMTP、POPS、DNS TCP协议和UDP协议: TCP:开销大,用于可靠性要求高的场合,TCP的过程就是像打电话的过程。面向连接,可靠,低效 UDP:用在对实时性要求比较高的场合。UDP过程相当于写信的过程。无连接,不可靠,效率高。 2.网络套接字Socket TCP 客户端要创建的对象Socket 服务器端要创建的对象ServerSocket。 创建一个TCP服务器端程序的步骤: a.创建一个ServerSocket b.从ServerSocket接受客户连接请求 c.创建一个服务线程处理新的连接 d. 在服务线程中,从socket中获得I/O流 e. 对I/O流进行读写操作,完成与客户的交互 f.关闭I/O流 g.关闭Socket 创建一个TCP客户端程序的步骤: a. 创建Socket b. 获得I/O流 c.对I/O流进行读写操作 d. 关闭I/O流 e. 关闭Socket 3.为多个客户端服务 服务器端可以处理多个客户端的请求,那么服务器端要有类似以下的代码实现: while true Socket socket serverSocket.accept ; Runnable r new TestThread socket ; Thread t new Thread r ; t.start ; TestThread实现了Runnable接口,在它的run方法中包含了与客户端循环通信的代码。 class TestThread implements Runnable ........ public void run try ..........; catch IOException e handle exception 4. 建立URL连接 1)URL和URI URL和URLConnection类封装了大量复杂的实现细节,这些细节涉及如何从远程站点获取信息。可以通过传递一个字符串来构建一个URL对象,URL url new URL urlString ;获得资源内容 InputStream in url.openStream ; URL:统一资源定位符 URI:统一资源标示符 在JAVA类库中URI类不包含任何用于访问资源的方法,它的唯一作用就是解析;URL类可以打开一个到达资源的流,因此URL类只能作用于Java类库知道该如何处理的模式,如http:、https:、ftp:、本地文件系统file:、JAR文件jar: 2)使用URLConnection获取资源 操作URLConnection对象的步骤: a.调用URL类中的openConnection 获得URLConnection对象。 URLCOnnection connection url.openConnection ; b.设置任意的请求属性 c.调用connect 连接远程资源 connection.connect ;//除了与服务器建立套接字连接外,还可向服务器查询头信息. d.与服务器建立连接后,可以查询头信息。getHeaderFieldKey和getHeaderField 两个方法列举消息头所有字段。 e.最后访问资源 URLConnectin类的方法:a.先介绍几个可以与服务器建立连接之前设置连接属性的方法 setDoInput 和setDoOutput ,默认情况下建立的连接只有从服务器读取信息的输入流,并没有任何执行写操作的输出流。要想获得输出流 如想服务器提交一个数据 ,既要调用connection.setDoOutput(true); setIfModifiedSince 用于告诉连接你只对自某个特定日期依赖修改过的数据感兴趣; setUseCaches和setAllowUserInteraction :之用于applet。前一个方法命令浏览器首先检查它的缓存,后一个则用于在访问有密码保护的资源是弹出对话框,以便查询用户名和密码。 setRequestProperty :用来设置对特定协议起作用的任何“名-值对”//如访问一个有密码保护的Web页connection. setReques

文档评论(0)

kabudou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档