Android——JDK的get请求方式
layout文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.hanqi.testapp3.TestActivity2"
android:orientation="vertical"> <Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="JDK-Get方式"
android:onClick="bt1_onClick"/>
<EditText
android:layout_width="match_parent"
android:layout_height="200dp"
android:id="@+id/et_2"/>
</LinearLayout>
java类:
package com.hanqi.testapp3; import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast; import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL; public class TestActivity2 extends AppCompatActivity { EditText et_2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test2);
et_2 = (EditText)findViewById(R.id.et_2);
}
//JDK的Get方式
public void bt1_onClick(View v)
{
//1.进度对话框
final ProgressDialog progressDialog = ProgressDialog.show(this,null,"正在加载,请稍后……");
//2.开启子线程,访问网络
new Thread(){
public void run()
{
try {
//1—URL
URL url = new URL("http://www.baidu.com"+"?name=tom"); //2—URL获取连接
HttpURLConnection huc = (HttpURLConnection)url.openConnection();
//请求方式
huc.setRequestMethod("GET");
//设置超时
huc.setConnectTimeout(3000);
huc.setReadTimeout(3000);
//连接并发送请求
huc.connect();
//接收
//判断返回状态码 200
int code = huc.getResponseCode();
if (code == 200)
{
//接收数据
//输入流
InputStream is = huc.getInputStream();
//读取流
//1—byte数组
byte[] b = new byte[1024];
//2—读到数组的长度
int i = 0;
//3—数据
final StringBuilder sb1 = new StringBuilder();
while ((i = is.read(b))>0)
{
sb1.append(new String(b,0,i));
}
//释放资源
is.close();
huc.disconnect();
//通过主线程显示信息和关闭对话框
runOnUiThread(new Runnable() {
@Override
public void run() {
et_2.setText(sb1);
progressDialog.dismiss();
}
});
}
else
{
Toast.makeText(TestActivity2.this, "连接错误,返回的状态码 = "+code, Toast.LENGTH_SHORT).show();
}
}
catch (Exception e)
{
e.printStackTrace();
progressDialog.dismiss();
}
}
}.start();
}
}



Android——JDK的get请求方式的更多相关文章
- JDK的get请求方式
package com.example.wang.testapp3; import android.app.ProgressDialog; import android.os.Bundle; impo ...
- android http协议post请求方式
方式一:HttpPost(import org.apache.http.client.methods.HttpPost 代码如下: private Button button1,button2,but ...
- android post带数据请求方式,传递的数据格式包括json和map
如下: public static String httpPost(String url, String json) { try { URL u = new URL(url); HttpURLConn ...
- android中用get和post方式向服务器提交请求
通过get和post方式向服务器发送请求首先说一下get和post的区别get请求方式是将提交的参数拼接在url地址后面,例如http://www.baidu.com/index.jsp?num=23 ...
- Android之Http通信——3.Android HTTP请求方式:HttpURLConnection
3.Android HTTP请求方式之HttpURLConnection 引言: 好了,前两节我们已经对HTTP协议进行了学习.相信看完前两节的朋友对HTTP协议相比之前 应该更加熟悉吧.好吧.学了要 ...
- Android进阶(一)几种网络请求方式详解
Ref:http://blog.csdn.net/zuolongsnail/article/details/6373051 Android应用经常会和服务器端交互,这就需要手机客户端发送网络请求,下面 ...
- Android Volley框架的几种post提交请求方式
首先简单描述一下Google的Android开发团队在2013年推出的一个网络通信框架Volley.它的设计目标是进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如下载文件等,Vol ...
- Android 数据存储五种方式
1.概述 Android提供了5种方式来让用户保存持久化应用程序数据.根据自己的需求来做选择,比如数据是否是应用程序私有的,是否能被其他程序访问,需要多少数据存储空间等,分别是: ① 使用Shared ...
- (转载)Android之三种网络请求解析数据(最佳案例)
[置顶] Android之三种网络请求解析数据(最佳案例) 2016-07-25 18:02 4725人阅读 评论(0) 收藏 举报 分类: Gson.Gson解析(1) 版权声明:本文为博主原创 ...
随机推荐
- 使windows隐藏文件全部显示出来
win+R => cmd=>attrib -s -b *.* /S /D 找出所有隐藏文件夹—— FindHidden
- C++ 基础算法之二分查找
前提: 有序数组! int binary_search(int* a, int len, int goal) { ; ; while(low <= high) { ; if(a[middle] ...
- The guard was taken to hospital in a critical condition.
The Prince George's County Fire Department said the guard was taken to hospital in a critical condit ...
- 关于mongodb的复合索引新功能
最新在做一个项目,由于查询字段较多,且查询较频繁,所以我做了一个复合索引,将所有需要查询的字段都做到索引里,做了一个名为s_1_m_1_c_1_v_1_year_1_month_1_week_1_da ...
- iOS 修改backBarButtonItem 中的titile 字段
需求如下:A 页面 push 到 B 页面. B 页面中有个返回按钮 不显示A 中的title,而显示 "<返回" ,当然系统的样式还是默认的系统样式.(考虑都是nav ...
- php 序列化、json
序列化 和 反序列化1. serialize和unserialize函数 2. json_encode 和 json_decode 使用JSON格式序列化和反序列化3. var_export 和 ev ...
- 如何在tomcat中如何部署java EE项目
如何在tomcat中如何部署java EE项目 1.直接把项目复制到Tomcat安装目录的webapps目录中,这是最简单的一种Tomcat项目部署的方法,也是初学者最常用的方法.2.在tomcat安 ...
- 向通知栏发送通知点击跳转并传递数据(PendingIntent)传递数据
// 为发送通知的按钮的点击事件定义事件处理方法 public void send() {///// 第一步:获取NotificationManager NotificationManager nm ...
- HTTP简介
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议.. HT ...
- ZOJ 3911 线段树
题意:有N个数字,M个操作,然后回答每个Q开头的询问 操作形式: A val pos:在pos位置上+val Q l r:询问l~r之间有多少个质数 R val l r:把l~r之间的数字替换成val ...