`
luckliu521
  • 浏览: 260552 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android上调用WebService

阅读更多
1.例子介绍

通过邮政编码查询该地区的天气预报,以POST发送的方式发送请求到webservicex.net站点,访问WebService.webservicex.net站点上提供查询天气预报的服务,具体信息请参考其WSDL文档,网址为:

http://www.webservicex.net /WeatherForecast.asmx?WSDL。

输入:美国某个城市的邮政编码。

输出:该邮政编码对应城市的天气预报。
2.实现步骤如下

(1)如果需要访问外部网络,则需要在 AndroidManifest.xml文件中加入如下代码申请权限许可:

<!-- Permissions -->

<uses-permission Android:name="Android.permission.INTERNET" />

(2)以HTTP POST的方式发送(注意:SERVER_URL并不是指WSDL的URL,而是服务本身的URL)。实现的代码如下所示:

private static final String SERVER_URL = "http://www.webservicex.net/WeatherForecast. asmx/GetWeatherByZipCode"; //定义需要获取的内容来源地址

HttpPost request = new HttpPost(SERVER_URL); //根据内容来源地址创建一个Http请求

// 添加一个变量

List <NameValuePair> params = new ArrayList <NameValuePair>();

// 设置一个华盛顿区号

params.add(new BasicNameValuePair("ZipCode", "200120"));  //添加必须的参数

request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8)); //设置参数的编码

try {

HttpResponse httpResponse = new DefaultHttpClient().execute(request); //发送请求并获取反馈

// 解析返回的内容

if(httpResponse.getStatusLine().getStatusCode() != 404)

{

  String result = EntityUtils.toString(httpResponse.getEntity());

  Log.d(LOG_TAG, result);

}

} catch (Exception e) {

Log.e(LOG_TAG, e.getMessage());

}

代码解释:

如上代码使用Http从webservicex获取 ZipCode为“200120”(美国WASHINGTON D.C)的内容,其返回的内容如下:

<WeatherForecasts xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http: //www.w3.org/2001/XMLSchema-instance" xmlns="http://www.webservicex.net">

  <Latitude>38.97571</Latitude>

  <Longitude>77.02825</Longitude>

  <AllocationFactor>0.024849</AllocationFactor>

  <FipsCode>11</FipsCode>

  <PlaceName>WASHINGTON</PlaceName>

  <StateCode>DC</StateCode>

  <Details>

    <WeatherData>

      <Day>Saturday, April 25, 2009</Day>

      <WeatherImage>http://forecast.weather.gov/images/wtf/sct.jpg</WeatherImage>

      <MaxTemperatureF>88</MaxTemperatureF>

      <MinTemperatureF>57</MinTemperatureF>

      <MaxTemperatureC>31</MaxTemperatureC>

      <MinTemperatureC>14</MinTemperatureC>

    </WeatherData>

    <WeatherData>

      <Day>Sunday, April 26, 2009</Day>

      <WeatherImage>http://forecast.weather.gov/images/wtf/few.jpg</WeatherImage>

      <MaxTemperatureF>89</MaxTemperatureF>

      <MinTemperatureF>60</MinTemperatureF>

      <MaxTemperatureC>32</MaxTemperatureC>

      <MinTemperatureC>16</MinTemperatureC>

    </WeatherData>



  </Details>

</WeatherForecasts>

这个例子演示了如何在Android中通过网络获取数据,掌握该类内容,开发者需要熟悉java.net.*,Android.net.*这两个包的内容,在这就不赘述了,请读者参阅相关文档。
分享到:
评论

相关推荐

    Android平台之Webservice详解(超详细)

    Android平台之Webservice详解(超详细),Android平台之Webservice详解(超详细),Android平台之Webservice详解(超详细)

    ANDROID中使用WEBSERVICE验证用户登录的示例

    在Android开发中,为了实现应用程序与服务器之间的数据交互,经常使用WebService技术进行用户验证,例如登录功能。这里的示例将详细介绍如何在Android应用中通过WebService接口验证用户登录信息。主要涉及的技术点...

    Android通过WebService访问SQLServer

    开发者可以使用IIS搭建SOAP WebService,以供Android客户端调用。 4. **Android访问WebService**: 在Android端,我们可以使用`HttpURLConnection`或`HttpClient`类进行HTTP请求,但现代Android开发推荐使用`...

    android 调用.net webservice

    本文将详细介绍如何使用KSOAP2库在Android应用中调用.NET WebService。 #### 二、准备工作 在正式介绍调用过程之前,我们需要做一些准备工作: 1. **环境搭建**:确保已经安装了Android Studio,并且创建了一个新...

    Android NanoHttpd搭建webservice

    这就涉及到如何利用NanoHttpd在Android上搭建一个微型的webservice。NanoHttpd是一个轻量级、易于集成的HTTP服务器库,非常适合在移动设备上使用。 首先,我们来深入理解`Android NanoHttpd`的核心概念。NanoHttpd...

    android webserviceandroid webserviceandroid

    ### Android WebService应用详解 #### 一、概述 在Android开发中,客户端应用程序与服务器端进行数据交互是非常常见的需求之一。这种交互可以通过多种方式实现,其中一种常用的方式就是使用WebService。WebService...

    Android客户端调用webService上传图片到服务器

    在Android客户端调用Web Service上传图片到服务器的过程中,主要涉及以下几个关键知识点: 1. **文件I/O操作**:客户端首先需要从SD卡或其他存储位置读取图片文件。这里使用`FileInputStream`读取图片文件,然后...

    Android通过webservice连接Sqlserver实例

    1. 调用WebService:使用Android的网络API(如HttpURLConnection)或者Retrofit等库,构造请求URL,携带必要的参数(如SQL查询语句),向服务器发送请求。 2. 数据解析:收到服务器返回的XML或JSON响应后,使用如DOM...

    Android axis调用Webservice

    在Android开发中,有时我们需要与远程服务器进行交互,获取或发送数据。Web Service是一种常见的通信方式,而Axis2是Apache组织提供的一款强大的Web Service框架,它支持SOAP和RESTful服务。本文将详细介绍如何在...

    Android开发之WebService介绍

    【Android开发之WebService介绍】 在Android开发中,与远程服务器进行数据交互是常见的...通过使用WebService,开发者可以轻松地集成各种服务,如天气预报、地图定位、支付接口等,极大地扩展了Android应用的功能。

    Android平台调用WebService详解

    ### Android平台调用WebService详解 #### 一、前言与背景 随着移动互联网技术的快速发展,Web服务在Android平台的应用越来越广泛。为了更好地利用现有的Web...希望本文能够帮助到正在学习或使用Android开发的读者们。

    delphi XE5 ANDROID平台 调用 webservice并访问操作MSSQL数据库

    然而,在 Android 平台上调用 Webservice 并访问操作 MSSQL 数据库是一个复杂的任务,本文将为您详细介绍如何使用 Delphi XE5 来实现这一目标。 一、服务端开发 服务端开发是指在服务器上创建一个 Webservice,...

    java android 调用webservice

    本篇将详细讲解如何在Android应用中使用Java调用Webservice。 一、理解Web服务 Web服务是一种基于互联网的、标准化的服务交互方式,它允许不同系统之间的应用程序共享数据和功能。常见的Web服务有SOAP(Simple ...

    android平台调用webservice

    本主题将深入探讨如何在Android应用中调用Web服务,特别是基于SOAP协议的Web服务,即“Android与服务器端数据交互(基于SOAP协议整合android+webservice)”。 SOAP(Simple Object Access Protocol)是一种轻量级...

    Android如何使用WebService接口中文最新版本

    本文档主要讲述的是Android如何使用WebService接口;WebService是一种基于SOAP协议的远程调用标准。通过WebService可以将不同操作系统平台,不同语言、不同技术整合到一起。在OPhone SDK中并没有提供调用WebService...

    安卓Android源码——WebService+ksoap2天气查询项目.zip

    这个压缩包文件“安卓Android源码——WebService+ksoap2天气查询项目.zip”是关于使用Android平台进行Web服务调用的示例项目。它涉及到的主要知识点包括Android应用开发、WebService通信以及ksoap2库的使用。 1. **...

    android调用webservice接口实现登陆源码

    本教程将深入探讨如何在Android中实现调用WebService接口进行登录功能,并基于提供的"login"源码进行分析。 首先,了解基础概念: 1. Android:Google开发的开源移动操作系统,主要应用于智能手机和平板电脑。 2. ...

    Android调用WebService

    Android调用SOAP WebService通常需要使用KSOAP2库,它可以解析和构造SOAP消息。 2. 使用KSOAP2的基本步骤: - 引入KSOAP2库到项目中。 - 定义SOAP请求参数,包括Namespace(命名空间)、Method Name(方法名)、...

    Android通过webservice连接SqlServer实例(Android4.0可运行)

    Android通过webservice连接SqlServer实例(Android4.0可运行)从原博http://blog.csdn.net/zhyl8157121/article/details/8169172下载下来的demo,看了评论和其它文章后修改,解决了Android2.3以上StrictMode模式下不...

Global site tag (gtag.js) - Google Analytics