XE5 ANDROID平台 调用 webservice
服务端需要midas.dll
XE5对android的平台支持很有吸引力,虽然目前用来直接开发应用到安卓市场卖赚钱可能性估计不大(安卓市场目前国内好像都是免费的天下),但是对于企业应用很是很有帮助的,比如开发一个手机客户端随时查询企业erp等管理软件的数据库!
webservice以前基本没有接触,恶补了几天,服务端用ro开发比较快捷(ro下载请自己baidu)
一,服务端开发:
1,打开delphi xe(服务端我用的是xe开发的,因为目前还没有出支持xe5的ro)
新建工程---RO sdk--vcl standalone--建立成功
2,工程打开后,在ide的菜单ro中选择edit serverice library
3,打开ServerForm,删除上面的2个控件,并添加TROIpHTTPServer(属性中可以设置端口), TROSOAPMessage 2个控件,设置TROIpHTTPServer的 dispatchers属性,绑定TROSOAPMessage
4,默认已经添加了了哇library 和newservice,我们一切按默认,用的是默认的一个函数sum,2个数求和
5,打开NewService_Impl,实现sum的具体代码:Result:=a+b;
6,运行服务端
打开浏览器测试:http://127.0.0.1:8099/soap
8099是我步骤3中设置的端口号,应该可以看到xml文件,说明服务端成功
二、服务端开发
1,打开xe5(为了测试android平台,客户端用xe5开发了)
2,新建项目-选择fm 移动项目
3,添加THTTPRIO控件
4,导入wsdl---
添加项目---web service --import wsdl
弹出向导对话框
这步遇到了问题
填入我服务端开发的soap地址,点击下一步,最后弹出错误,原因不明
解决方法,回到xe开发服务端的界面,打开ide菜单ro中选择edit serverice library
选择view -wsdl-save as 操作保存 wsdl文件
回到xe5中的导入wsdl文件对话框,改为直接选择上面的wsdl文件,成功得到soap_1.pas
在unit1.pas中添加soap_1.pas引用
5,在界面添加2个edit,1个lable,一个button
添加button的clickdaima
procedure TForm1.Button1Click(Sender: TObject);
begin
HTTPRIO1.URL:='http://192.168.1.103:8099/SOAP';
Label1.Text:=IntToStr((HTTPRIO1 as NewService).Sum(StrToInt(Edit1.Text),strtoint(Edit2.Text)));
end;
6,发布至android平台测试(注意保证android平台与电脑的网络连通)
代码下载地址http://pan.baidu.com/share/link?shareid=1383305444&uk=4127515284
我抛砖引玉
服务端需要midas.dll
XE5 ANDROID平台 调用 webservice的更多相关文章
- 在Android中使用Android Ksoap2调用WebService
一.WebService介绍 WebService是基于SOAP协议可实现web服务器与web服务器之间的通信,因采用SOAP协议传送XML数据具有平台无关性,也是成为解决异构平台之间通信的重要解决方 ...
- 在Android中调用WebService
某些情况下我们可能需要与Mysql或者Oracle数据库进行数据交互,有些朋友的第一反应就是直接在Android中加载驱动然后进行数据的增删改查.我个人不推荐这种做法,一是手机毕竟不是电脑,操作大量数 ...
- android之调用webservice 实现图片上传
转:http://www.cnblogs.com/top5/archive/2012/02/16/2354517.html public void testUpload(){ try{ String ...
- 转--Android中调用webservice的工具类
最近学习WebService,感觉利用这个借口开发网站的Android客户端方便及了,用到一个工具类,这里铭记一下. public static final String WebServiceName ...
- CSDN上下载的一些关于Android程序调用Webservice执行不成功的问题
今天从书上和CSDN上找了几个关于android调用webservice的样例,这些样例从代码来看.没不论什么错误,可是就是执行不成功.分析了android调用web接口的写法,发现这些样例在调用的时 ...
- XE5 ANDROID通过webservice访问操作MSSQL数据库
上接XE5 ANDROID平台 调用 webservice 一.服务端 在ro里添加函数(在impl上添加阿东connection,adoquery,dataprovider) function TN ...
- 在Android 中使用KSOAP2调用WebService
WebService 是一种基于SOAP协议的远程调用标准.通过WebService可以将不同操作系统平台,不同语言.不同技术整合到一起.在Android SDK中并没有提供调用WebService的 ...
- 在Android中调用C#写的WebService(附源代码)
由于项目中要使用Android调用C#写的WebService,于是便有了这篇文章.在学习的过程中,发现在C#中直接调用WebService方便得多,直接添加一个引用,便可以直接使用将WebServi ...
- 【Android进阶】Android调用WebService的实现
最近想自己搞搞服务器,就从最简单的webservice开始吧 先上效果图 项目结构 开始贴代码,注释都有,有问题的请留言 MainActivity.java package com.example.w ...
随机推荐
- c语言_帮助别人
1. /*4.找出一个二维数组中的鞍点,即该位置上的元素在该行上最大.在该列上最小,也可能没有鞍点*/ #include<stdio.h> int main() { int i,j,max ...
- jQuery moblie 配合jQuery 实现移动端下拉刷新
<script type="text/javascript" src="http://bj.jiaju001.com/static/js/jquery-1.9.0. ...
- 实验教学管理系统 c语言程序代写源码下载
问题描述:实验室基本业务活动包括:实验室.班级信息录入.查询与删除:实验室预定等.试设计一个实验教学管理系统,将上述业务活动借助计算机系统完成. 基本要求: 1.必须存储的信息 (1)实验室信息:编号 ...
- some words we should know
2010年,芬兰艺术家Mikko Kuorinki做了一件独特的艺术品. 他在赫尔辛基的奇亚斯玛当代艺术博物馆(Kiasma museum),找了一堵墙,装了一个175 x 320cm的木架子,上面用 ...
- oracle数据库 PSU,SPU(CPU),Bundle Patches 和 Patchsets 补丁号码快速参考 (文档 ID 1922396.1)
数据库 PSU,SPU(CPU),Bundle Patches 和 Patchsets 补丁号码快速参考 (文档 ID 1922396.1) 文档内容 用途 详细信息 Patchsets ...
- 如何定位到append的当前位置,不用拉滚动条scrollIntoView方法
var bb_mes_con = $('bb_mes_con'); var mes_html = document.createElement('div'); mes_html.setAttribut ...
- [改善Java代码]警惕泛型是不能协变和逆变的
什么叫做协变(covariance)和逆变(contravariance)? 在变成语言的类型框架中,协变和逆变是指宽类型和窄类型在某种情况下(如参数,泛型,返回值)替换或交换的特性,简单的说,协变是 ...
- hdu 4685 简单匹配+Tarjan算法
思路:首先看到这题以为能用poj1904的模版直接A掉,WA了几次,然后又TLE了几次.还是想到了正解. 一开始我想的大致方向已经是对的了.先是由王子向每个喜欢的公主建边,再求一次最大匹配,找出匹配后 ...
- C# 委托的几种写法
class Program { delegate string Get(string ss); delegate string Get2(int i); ...
- Android中android-async-http开源网络框架的简单使用
android-async-http开源网络框架是专门针对Android在Apache的基础上构建的异步且基于回调的http client.所有的请求全在UI线程之外发生,而callback发生在创建 ...