博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于联网的一丢丢知识
阅读量:731 次
发布时间:2019-03-22

本文共 1245 字,大约阅读时间需要 4 分钟。

这里写自定义目录在此先讲解下线程的知识:(From:安安本安)

1,线程(Thread)

是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。

2,多线程(MultiThreading)

是指从软件或者硬件上实现多个线程并发执行的技术。

当一个应用第一次启动时,Android会同时启动一个对应的主线程(MainThread),主线程主要负责处理与UI相关的事件(用户的按钮点击事件,用户手势事件以及屏幕绘图事件等),并把相关的事件分发到对应的组件进行处理,所以主线程通常又被叫做UI线程,

3,在开发Android 应用时必须遵守单线程模型的原则:

不要阻塞UI线程

确保只在UI线程中访问Android Ul工具包如果在非UI线程中直接操作UI控件,会抛出android.view.ViewRoot$CalledFromWrongThreadException的异常,这与普通的java程序不同。
Message:消息,理解为线程间交流的信息,包含消息ID、消息处理对象和处理的数据等,统一放到Message Queue,最终由Handler处理。
Handler:非UI线程与UI线程通信的接口,消息处理者,专门负责Message的发送和处理:

1) WebView

在这里插入图片描述

布局中写:

在这里插入图片描述

MainActivity里:

在这里插入图片描述PS:运行前保持联网

2)使用HTTP协议访问网络:

原理

客户端向服务器发出请求,服务器接收请求后返回数据给客户端,客户端再对数据进行解析处理。
WebView在后台已处理了发送HTTP请求,接收服务响应,解析返回数据,展示
1))手动发送HTTP请求(HttpURLConnection):

MainActivity中:在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Activity中:
在这里插入图片描述
点击后:
在这里插入图片描述

若向服务器提交数据:

将请求方法改成POST,并在获取输入流之前把要提交的数据写出(每条消息以键值对形式存在,数据和字符间用‘&’隔开)

eg(传输用户名和密码):

connection.setRequestMethod("POST");DataOutputStream out = new DataOutputStream(connection.getOutputStream());out.writeBytes("username = admin & password = 123456");

3)OKHTTP

1))添加依赖

在AndroidStudio中使用不需要下载jar包,直接添加依赖即可:

implementation 'com.squareup.okhttp3:okhttp:4.9.0' //Android 4.1的依赖

2))添加网络权限(在AndroidManifest里)

在这里插入图片描述在MainActivity中:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在布局中:
在这里插入图片描述
PS:ScrollView:视图的滚动过程

转载地址:http://ppggz.baihongyu.com/

你可能感兴趣的文章