ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:373.97KB ,
资源ID:3195252      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3195252.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(webservice与android实现通信.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

webservice与android实现通信.docx

1、webservice与android实现通信 通过webservice与android实现通信(C#与android) 我用的系统是win7,开发环境是vs2008 eclipse3.5 ,当然eclipse需要安装android的插件。这里我就不说如何搭建了,大家不懂的可以去http:/www.mars-droidcm/ android-mars论坛找找,有视频前几集就是教你如何搭建环境。假设你们已经拥有vs2008 以及eclipse。首先第一步先让我们搭建webservice服务端。实现了复杂数据的返回,以及解析。但是android不能发送复杂数据给webservice,当然webser

2、vice也不能穿复杂数据的参数。 这也是webservice规定的,算是不足之处吧。 1、启动vs,新建一个ASP.NET Web服务应用程序。下面的默认名称就是webservice1。我们新建一个程序名字就叫webservice2android。 webservices代码如下:using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Linq;using System.Web;using System.Web.Services;using System.W

3、eb.Services.Protocols;using System.Xml.Linq;using webservice2android;/必须应用自己的namespacenamespace webservice2android public class Admin private int id; public int Id get return id; set id = value; private string username; public string Username get return username; set username = value; private string

4、 password; public string Password get return password; set password = value; / / Service1 的摘要说明 / WebService(Namespace = http:/tempuri.org/) WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1) ToolboxItem(false) / 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 / System.Web.Script.Services.Scr

5、iptService public class Service1 : System.Web.Services.WebService WebMethod public string HelloWorld() return Hello World; WebMethod System.Xml.Serialization.XmlInclude(typeof(Admin)/添加Admin 到XmlInclude public ArrayList getData() ArrayList list = new ArrayList(); for (int i = 0; i 10; i+) Admin admi

6、n = new Admin(); admin.Id = i; admin.Username = admin + i; admin.Password = admin + i; list.Add(admin); return list; 2、由于android访问webservice时,需要用到ip服务信息,以及域名,但是当vs启动webservice时,他的ip以及端口号都是随机的,这样android就不能访问该服务。所以我们在这里需要绑定我们的ip以及端口号。 A、首先我们打开win7的控制面板。 B、打开程序与功能。 C、打开 打开或关闭windows功能。 D、找到Internet信息服务

7、,展开文件夹。再找到Web管理工具,展开你会发现4个关于iis的文件夹。你将这四个文件夹都选中对号.。 E、单击确定。这里需要等待一些时间。 F、打开控制面板,找到管理工具。 G、然后打开 Internet 信息服务(IIS)管理器 H、展开 计算机名-pc(),选择网站,右击添加网站 I、输入网站名称,我这里写的是test J、到计算机中创建一个目录,该目录用来放你发布的webservice用的。我建在了D盘的根目录下。 K、将建好的路径放到物理路径中。点击确定就行了。 L、浏览 Default Web Site网站,将iisstart.htm文件复制,然后到test网站下浏览,再将他粘贴上

8、去。最好修改一下,这样可以和我们默认的做一区别,防止混淆。 M、将Default Web Site网站 停止,然后打开test网站。 N、关闭为windows防火墙,或者允许该程序通过。 O、这是你在同网下的电脑里输入你的ip,将会看到你的iisstart.htm页面,这就说明你成了。这是我的页面。3、我们将建好的webservice发布在网上。 A、右击项目选择发布目标位置:就是我们iis服务的网站文件夹。然后点击发布。 B、然后F5 启动vs ,此时浏览器将自动打开。 C、将地址栏里的localhost:xxx改为你的计算机ip(不用加端口)。 例如我的:http:/192.168.0.1

9、08/Service1.asmx 然后,回车。页面就会不改变的。只要连接到你的计算机的电脑在浏览器 中输入该地址,会和你看到的一样的。 D、记下上面的地址。(当然你的就是你自己的ip信息了)我们在android端 要用到的。还有我们的域名:就是默认的 http:/tempuri.org/ 。还需要 记住方法名 HelloWord,和getData。以及参数的类型和参数名。3、创建android项目,我建的项目名称叫做:AndroidWsTest2.2 注意项目需要两个jar包。 在网上能下载到。 新建一个包,比如webservices.util 常见类叫做:WebserviceUtiler 代

10、码如下:package webservice.util;import java.io.IOException;import java.util.HashMap;import org.ksoap2.SoapEnvelope;import org.ksoap2.serialization.SoapObject;import org.ksoap2.serialization.SoapSerializationEnvelope;import org.ksoap2.transport.AndroidHttpTransport;import org.ksoap2.transport.HttpTranspo

11、rtSE;import org.xmlpull.v1.XmlPullParserException;/* * * author ytzn * WebServices android客户端 */public class WebserviceUtiler private String nameSpace ; /域名 private String methodName ; /方法名 private String url ; /服务器发布的ip信息 private String soapAction ; /应用程序字符串 private String methodNames ; /参数名 privat

12、e Object methodValues ; /参数值 private int methodLenth = 0; /参数个数 private HashMap maps; /装在参数的map /* * * param nameSpace 域名 http:/ytzn.test/ * param methodName 方法名 Add * param url 服务器发布的ip信息 http:/192.168.0.108/Service1.asmx * param methodNames 参数变量 String methodNames = new Stringx,y,z; * param method

13、Values 参数值 Object methodValues = new Object9,14,8; */ public WebserviceUtiler(String nameSpace, String methodName, String url, String methodNames, Object methodValues) super(); this.nameSpace = nameSpace; this.methodName = methodName; this.url = url; this.methodNames = methodNames; this.methodValues

14、 = methodValues; this.soapAction = this.nameSpace + this.methodName; this.maps = new HashMap(); /* * 加载参数 * return boolean */ private boolean isMethodMapsOk() int lenthN = methodNames.length; int lenthV = methodValues.length; if(lenthN!=lenthV) return false; else for (int i = 0; i lenthV; i+) maps.put(methodNamesi, methodValuesi); this.methodLenth = methodValues.length; return true; /*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1