当前位置:  编程技术>移动开发

Android HTTP发送请求和接收响应的实例代码

    来源: 互联网  发布时间:2014-10-20

    本文导语:  添加权限 首先要在manifest中加上访问网络的权限: 代码如下: ... 完整的Manifest文件如下: 代码如下: 布局代码如下: 代码如下: activity_http_demo1.xml 主要的代码: 代码如下: package com.example.httpdemo1; import java.io...

添加权限
首先要在manifest中加上访问网络的权限:
代码如下:



...


完整的Manifest文件如下:
代码如下:















布局代码如下:
代码如下:






activity_http_demo1.xml

主要的代码:
代码如下:

package com.example.httpdemo1;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.widget.Button;
public class HttpDemo1Activity extends Activity
{
private Button mSendReqBtn = null;// 发送请求的按钮
private WebView mWebView = null;// 用于显示结果,用载入html字符串的方式显示响应结果,而不是使用WebView自己的方式加载URL
// 响应
private HttpResponse mHttpResponse = null;
// 实体
private HttpEntity mHttpEntity = null;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_http_demo1);
mSendReqBtn = (Button) findViewById(R.id.requestBtn);
mSendReqBtn.setOnClickListener(mSendClickListener);
mWebView = (WebView) findViewById(R.id.webview);
}
private OnClickListener mSendClickListener = new OnClickListener()
{
@Override
public void onClick(View v)
{
// 生成一个请求对象
HttpGet httpGet = new HttpGet("http://www.baidu.com/");
// 生成一个Http客户端对象
HttpClient httpClient = new DefaultHttpClient();
// 下面使用Http客户端发送请求,并获取响应内容
InputStream inputStream = null;
try
{
// 发送请求并获得响应对象
mHttpResponse = httpClient.execute(httpGet);
// 获得响应的消息实体
mHttpEntity = mHttpResponse.getEntity();
// 获取一个输入流
inputStream = mHttpEntity.getContent();
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(inputStream));
String result = "";
String line = "";
while (null != (line = bufferedReader.readLine()))
{
result += line;
}
// 将结果打印出来,可以在LogCat查看
System.out.println(result);
// 将内容载入WebView显示
mWebView.getSettings().setDefaultTextEncodingName("UTF-8");
// 直接使用mWebView.loadData(result, "text/html", "utf-8");会显示找不到网页
// 换成下面的方式可以正常显示(但是比较宽,拖动可见百度logo)
mWebView.loadDataWithBaseURL(null, result, "text/html",
"utf-8", null);
// 直接载入URL也可以显示页面(但是此例子主要是为了验证响应返回的字符串是否正确,所以不用下面这行代码)
// mWebView.loadUrl("http://www.baidu.com/");
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
try
{
inputStream.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
};
}

程序运行结果如下:
 
参考资料
Android开发视频教程HTTP操作。——http://www.marsdroid.org
Android Reference: package org.apache.http:
http://developer.android.com/reference/org/apache/http/package-summary.html

    
 
 

您可能感兴趣的文章:

  • android 触屏的震动响应接口调用方法
  • Android开发中避免应用无响应的方法(Application Not Responding、ANR)
  • Android ListView的item背景色设置和item点击无响应的解决方法
  • Android瀑布流实例 android_waterfall
  • Android的OpenGL编程实例 Android-GL
  • android 简单图片动画播放的实例代码
  • android WakeLock使用方法代码实例
  • android自动安装apk代码实例(不使用apk安装器安装)
  • android 弹出提示框的使用(图文实例)
  • 控制Android LED灯颜色的代码实例
  • Android中AnimationDrawable使用的简单实例
  • Android中将View的内容保存为图像的简单实例
  • Android入门之LinearLayout、AbsoluteLayout的用法实例讲解
  • android中Bitmap的放大和缩小实例代码
  • android中写一个内部类来选择文件夹中指定的图片类型实例说明
  • 怎样删除android的gallery中的图片实例说明
  • 在Android中 获取正在运行的Service 实例
  • Android根据电话号码获得联系人头像实例代码
  • Android调用默认浏览器打开指定Url的方法实例
  • android双缓冲技术实例详解
  • ANDROID 完美退出APP的实例代码
  • Android对sdcard扩展卡文件操作实例详解
  • Android 清除SharedPreferences 产生的数据(实例代码)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • android接收到蓝牙配对请求时如何点亮屏幕具体实现
  • Android中BroadcastReceiver(异步接收广播Intent)的使用
  • android通过蓝牙接收文件打开时无法自动选择合适的应用程序
  • Android短信接收监听、自动回复短信操作例子
  • Android Mms之:接收信息流程(图文详解)
  • Android中发送Http请求(包括文件上传、servlet接收)的实例代码
  • 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)
  • Android系统自带样式 (android:theme)
  • Android开发需要的几点注意事项总结
  • Android网络共享软件 Android Wifi Tether
  • android 4.0 托管进程介绍及优先级和回收机制
  • Android 图标库 Android GraphView
  • Android访问与手机通讯相关类的介绍
  • 轻量级Android开发工具 Android Tools
  • Android及andriod无线网络Wifi开发的几点注意事项
  • Android 开发环境 Android Studio
  • Android 2.3 下StrictMode介绍
  • IDEA的Android开发插件 idea-android
  • Android手机事件提醒 Android Notifier
  • XBMC的Android客户端 android-xbmcremote
  • Android小游戏 Android Shapes
  • Android电池监控 Android Battery Dog
  • android开发:“android:WindowTitle”没有对应项no resource
  • Android 上类似IOS 的开关控件。 Android ToggleButton
  • Android 将 android view 的位置设为右下角的解决方法
  • Android 2D游戏引擎 Android Angle
  • Android的UI工具包 android-ui-utils


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3