Android网络编程基础知识详解
需积分: 8 85 浏览量
更新于2024-07-22
收藏 2.16MB DOCX 举报
Android基础知识点总结
Android核心基础知识是每个Android开发者都需要掌握的基本技能,本文总结了Android网络编程的基础知识,包括网络编程的预备知识、访问网络的权限、子线程执行网络操作、避免ANR异常、子线程不能修改UI、使用Handler实现子线程与主线程之间的通信、模拟器如何访问本地Tomcat等。
1.Android网络编程基础知识
Android网络编程是任何一个Android程序员必备的技能。访问网络的Android应用都必须加上访问互联网的权限,否则将无法访问网络。
1.1 网络编程的预备知识
访问网络的Android应用都必须加上访问互联网的权限,否则将无法访问网络。在Android中凡是对UI的更新、“耗时”操作等都需要在子线程中进行。Android 4.0以上版本,Google更加在意UI界面运行的流畅性,强制要求访问网络的操作不允许在主线程中执行,只能在子线程中进行,在主线程请求网络时,会报ANR异常。
1.2 子线程执行网络操作
在Android中凡是对UI的更新、“耗时”操作等都需要在子线程中进行。子线程不能修改UI,主线程也叫UI线程,Activity中的onCreate方法和点击事件的方法都是运行在主线程中的。主线程创建的界面, 只有主线程才能修改,别的线程不允许修改UI,否则会报错。如果子线程修改了UI,系统会验证当前线程是不是主线程,如果不是主线程,就会终止运行。
1.3 避免ANR异常
在主线程中做一些耗时的操作,阻塞了主线程,当用户点击其时,主线程无法响应,这是就会出ANR异常。ANR异常是ApplicationNotResponse的缩写,应用程序无响应。
1.4 使用Handler实现子线程与主线程之间的通信
既然子线程不能修改主线程的UI,那么,我们的子线程如果需要修改UI该怎么办呢?解决方式是使用Handler实现子线程与主线程之间的通信。Handler是Android提供的一种机制,用于在不同的线程之间进行通信。Looper是Handler的核心组件,负责监听和处理消息。
1.5 模拟器如何访问本地Tomcat
模拟器把它自己作为了localhost,也就是说,代码中使用localhost或者127.0.0.1来访问,都是访问模拟器自己!若想在模拟器上面访问我们的电脑,那么就使用android内置的IP:10.0.0.2,10.0.0.2是模拟器设定的特定ip,在模拟器上用10.0.0.2就能成功访问我们的电脑本机。
1.6 案例-网络图片查看器
需求:实现一个网络图片查看器,在页面输入框填入网络图片的地址,点击访问按钮,可以访问网络并获取图片,并显示在界面上。新创建一个工程,工程名字《网络图片查看器》。在工程清单文件(AndroidManifest.xml)中添加访问网络权限,使用并修改默认的布局文件(activity_main.xml),实现网络图片查看器的功能。
2015-04-28 上传
2024-10-14 上传
2024-10-14 上传
飞鸟已过
- 粉丝: 1
- 资源: 9
最新资源
- C语言快速排序算法的实现与应用
- KityFormula 编辑器压缩包功能解析
- 离线搭建Kubernetes 1.17.0集群教程与资源包分享
- Java毕业设计教学平台完整教程与源码
- 综合数据集汇总:浏览记录与市场研究分析
- STM32智能家居控制系统:创新设计与无线通讯
- 深入浅出C++20标准:四大新特性解析
- Real-ESRGAN: 开源项目提升图像超分辨率技术
- 植物大战僵尸杂交版v2.0.88:新元素新挑战
- 掌握数据分析核心模型,预测未来不是梦
- Android平台蓝牙HC-06/08模块数据交互技巧
- Python源码分享:计算100至200之间的所有素数
- 免费视频修复利器:Digital Video Repair
- Chrome浏览器新版本Adblock Plus插件发布
- GifSplitter:Linux下GIF转BMP的核心工具
- Vue.js开发教程:全面学习资源指南