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) 版权声明:本文为博主原创 ...
随机推荐
- 从新 开始学习java
今天备受打击了,群里 发一个段 招租的代码.挺火的,一时没想出来.就亲测了一遍.做了两遍才看出来原因,对此感觉基础不扎实,从新学习,当做复习. 群里传的代码 亲测,代码. 了解缘由. package ...
- android editText 监听事件
在软键盘中注意 在监听的 edittext中 使用android:imeOptions属性的时候,一定要对EditText设置 android:inputType 或者 设置 android:sing ...
- 个人对sort()排序方法中比较函数一直很混乱,今日理清
需求:使用随机数来打印出0-10,并排序. 代码: var a = new Array();var testArray = function() { while (1) { var b = parse ...
- CSS3 Background-size
详情见链接 http://www.w3cplus.com/content/css3-background-size/ 例子:http://www.topcss.org/demo/background- ...
- Postgresql存储过程调试:PostgreSQL 之 Function NOTICE
转载自http://zhenghaoju700.blog.163.com/blog/static/13585951820116782843994/ 先安装一个PostgreSQL(见补充知识) 比较O ...
- SQLSERVER2008 不能用IP连接数据库问题
本机安装的数据库只能用电脑名+"\"+实例名来访问,用“.”.“(local)”.“localhost”呀都不能访问.然后在网上挖资料呀,挖呀挖呀,终于挖到了解决办法. 1.不能用 ...
- c语言中gets ,getschar 和fgets 的用法及三者之间的差别,还有scanf
①gets [1]函数:gets(字符指针) [2]头文件:stdio.h(c中),c++不需包含此头文件 [3]原型:char*gets(char*buffer); [4]功能:从stdin流中读取 ...
- mysql 报错max_allowed_packet处理办法
首先打开mysql管理工具执行 SHOW VARIABLES LIKE '%max_allowed_packet%'; 看到如图所示的效果 max_allowed_packet 1024slav ...
- 判断是否存在哈密顿路--HDU 5424
题意:给一张无向图,判断是否是哈密顿图. 哈密顿路:经过每个点有且仅有一次的一条通路. 方法:每次找度数最小的点作为起点,然后dfs整个图,看能遍历到的点的数目能否达到n. #include<i ...
- C# js jquery复制textbox内容总结
C# Language//复制: private void button1_Click(object sender, System.EventArgs e) { if(textBox1.Selec ...