没有合适的资源?快使用搜索试试~ 我知道了~
Android Socket网络编程原理.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 115 浏览量
2022-07-10
02:41:36
上传
评论
收藏 285KB PDF 举报
温馨提示
试读
4页
Android Socket网络编程原理.pdf 学习资料 复习资料 教学资源
资源推荐
资源详情
资源评论
Android Socket网络编程原理
林志红
(北京信息职业技术学院)
摘 要:Android 平台上开发 Socket 网 络程序的特殊性在于: 1.Socket 在
Android 上的编程应用中,大多是作为客户端来使用 2.访问网络不能在主线程中
进行,而子线程不能访问主线程中的界面组件,这就要用到 Handler 的消息传递
机8 3.在编写访问网络的应用程序时,要设定相应的网络访问权限。
关键词:Android,Socket,网络编程,Handler,网络访问权限
智能手机像个人电脑一样,具有独立的操作系统,并可以通过移动通讯网络来实现无线
网络接入。移动互联网就是将移动通信和互联网二者结合起来,成为一体。移动通信和互联
网成为当今世界发展最快、市场潜力最大、前景最诱人的两大业务。现在很少有智能手机软件
无需联网就能正常使用其相关功能,几乎没有“功能不以联网为基础”的软件了。智能手机
的 Android 操作系统是当今手机主流操作系统之一,基于 Android 平台的网络程序设计成为
手机软件开发中的关键技术。
我们已经学过的 Java Socket 编程,是基于 Java SE 平台的网络编程,现在我们来学习基
于 Android 平台的 Socket 网络程序设计。因为 Android 平台上编写应用程序就是使用 Java 语
言,所以之前所学 SE 平台上 Java Socket 相关内容在 Android 平台上都是适用的,但是
Android 平台也有其特殊之处,在 Android 平台上做 Socket 编程还有一些具体的规则需要遵
循。今天我们的目标就是学习如何在 Android 平台上进行 Java Socket 网络程序设计。
首先,Android 平台上的网络程序一般都是客户端程序
我们知道,服务器必须要有一个固定的 IP 地址,这样才能接受来自全球的客户端连接
请求,就像客服热线必须对外公布一个固定的电话号码,这样才能为四面八方的用户提供服
务。而手机无线上网时 IP 地址通常都是由移动运营公司动态分配的,没有固定的 IP 地址,
所以手机一般是不作为服务器来是用的。Socket 在 Android 上的编程应用中,大多是作为客
户端来使用。
其次,Android 平台对于网络操作和 UI 操作有一些特殊规则
一般手机应用程序都会有一个与用户交互的 UI 界面,用户操作 UI 界面是否流畅直接影
响到手机的用户体验。当应用程序启动时,Android 首先会开启一个主线程 ,也就是 UI 线程,
主线程负责管理界面中的 UI 控件,进行事件分发, 比如说, 你要是点击一个 Button
,Android 会分发事件到 Button 上,来响应你的操作。 如果此时需要一个耗时的操作,例如:
联网读取数据,就不能把这种操作放在主线程中,因为放在主线程中界面会出现假死现象,
如果 5 秒钟还没有完成该操作的话,会收到 Android 系统的一个错误提示 "强制关闭",从而
破坏了用户体验。Android4.0 明确规定,访问网络不能在主程序中进行,这就要求所有的网
络相关操作,包括建立连接、数据发送、数据接收都必须放在新启动的线程中。
然而这样就会产生一个新的问题,因为 UI 线程中一般会有一些界面组件用来显示从网
络上收到的数据,比如说从网上获取一个网页,在一个 TextView 中将其源代码显示出来,
这种涉及到网络操作的程序需要新启动一个线程完成网络访问,但是在获得页面源码后,却
不能直接在网络操作线程中调用 TextView.setText()去更新 UI 线程中 TextView 组件的显示内
容,因为 Android 平台不允许新启动的线程访问 UI 线程中的界面组件,于是就有了矛盾,
1 / 4
Android Socket 网络编程原理
资源评论
努力搬砖的小王
- 粉丝: 16
- 资源: 7706
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功