•通过浏览器查看Tomcat服务器中的图片
1、将要查看的图片dd.jpg存放到Tomcat的webapps/ROOT/目录下
2、启动服务器
3、打开浏览器,输入:http://172.23.7.240:8080/dd.jpg
•网络图片查看器(带有缓存功能)
View Code
1、主线程不能被阻塞,所有很多的耗时操作都不能放在主线程中运行,否则会发生ANR异常(application not response)。
2、刷新UI界面的代码只能运行在主线程中,运行在子线程中是没有任何效果的。 如果需要在子线程总刷新UI,那么就要使用消息队列机制。
View Code
要添加权限
1
2
•消息处理机制
消息处理机制的原理:
所有使用UI界面的操作系统,后台都运行着一个死循环,在不停地监听和接受用户发出的指令,一旦接受指令就立即执行。
当我们的Android应用程序的进程一创建的时候,系统就给这个进程提供了一个Looper(轮询器),Looper是一个死循环,它内部维护着一个消息队列,Looper不停地从消息队列中取消息,取到消息就发送给Handler,最后Handler根据接收到的消息去修改UI。
主线程创建时,消息队列和轮询器对象就会被创建,但是消息处理器对象,需要使用时,自行创建。
步骤:
1、在主线程中创建Handler
2、在线程中得到handler的引用,调用发送消息的方法
3、handler执行handlerMessage方法去西湖里消息,并修改UI界面
•HTML源文件查看器
View Code
•使用GET方式向服务器端提交数据
1、把需要提交的参数组拼到URL地址的后面:http://192.168.22.136:8080/web/servlet/LoginServlet?username=123&password=1233
缺点:
1、提交数据的长度有限制:最大长度4kb,windows中提交数据时最大长度为1kb;
2、不安全
优点:代码简单
View Code
•使用POST方式向服务器端提交数据(重点)
业务场景:
1、用户登录
2、文件上传
1、设置请求头信息POST、Content-Type、Content-Length:
conn.setRequestProperty(“Content-Type”, “application/x-www-form-urlencoded”);
//必须添加的两个请求头信息
conn.setRequestProperty(“Content-Length”, data.length()+"");
conn.setRequestMethod(“POST”);
2、设置把数据提交到服务器端:
//设置允许打开post请求的流
conn.setDoOutput(true);
//把数据写到服务器端
conn.getOutputStream().write(data.getBytes());
缺点:
1、代码复杂
优点:
1、安全;
2、提交大量的数据
View Code
•HttpClient(发送GET请求和POST请求)
View Code
• 异步HttpClient框架(发送GET请求和发送POST请求)AsyncHttpClient
View Code