android平台实现通过调用WebService获取服务器信息
2014-07-11 17:50
746 查看
一、开发前准备
1、下载jar包,下载地址
http://code.google.com/p/ksoap2-android/wiki/HowToUse?tm=2
或直接点击 http://ksoap2-android.googlecode.com/svn/m2-repo/com/google/code/ksoap2-android/ksoap2-android-assembly/3.0.0/ksoap2-android-assembly-3.0.0-jar-with-dependencies.jar
下载ksoap***.jar
2、在eclipse中新建一个android app工程
3、用鼠标将下载下来的jar包拖动到新建工程的lib文件加下,出现提示,选择copy
4、在新建的工程文件夹点右键属性,选择Java Build Path,右面选择libraries,点击右面的 AddJARs,选择那个jar包,点击OK
5、打开工程的AndroidManifest.xml文件,加上
<uses-permissionandroid:name="android.permission.INTERNET" />
表示可以访问网络,并将android:minSdkVersion 设置为"11"
6、在主程序进行操作前加上以下代码
主要原因是,android4.0以后的版本不允许在主程序中进行联网操作,否则会报如下错误
android.os.NetWorkOnMainException和android.os.NetWorkOnMainThreadException
二、程序中实现访问Webservice
1、下载jar包,下载地址
http://code.google.com/p/ksoap2-android/wiki/HowToUse?tm=2
或直接点击 http://ksoap2-android.googlecode.com/svn/m2-repo/com/google/code/ksoap2-android/ksoap2-android-assembly/3.0.0/ksoap2-android-assembly-3.0.0-jar-with-dependencies.jar
下载ksoap***.jar
2、在eclipse中新建一个android app工程
3、用鼠标将下载下来的jar包拖动到新建工程的lib文件加下,出现提示,选择copy
4、在新建的工程文件夹点右键属性,选择Java Build Path,右面选择libraries,点击右面的 AddJARs,选择那个jar包,点击OK
5、打开工程的AndroidManifest.xml文件,加上
<uses-permissionandroid:name="android.permission.INTERNET" />
表示可以访问网络,并将android:minSdkVersion 设置为"11"
6、在主程序进行操作前加上以下代码
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads() .detectDiskWrites() .detectNetwork() .penaltyLog() .build()); StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() .detectLeakedSqlLiteObjects() .detectLeakedClosableObjects() .penaltyLog() .penaltyDeath() .build());
主要原因是,android4.0以后的版本不允许在主程序中进行联网操作,否则会报如下错误
android.os.NetWorkOnMainException和android.os.NetWorkOnMainThreadException
二、程序中实现访问Webservice
private static final String NAMESPACE ="所调用的WebService的命名空间"; private static String URL = "所调用的WebService的地址"; private static final String METHOD_NAME = "所调用的WebService中的方法"; try { SoapObject rpc = newSoapObject(NAMESPACE, METHOD_NAME); rpc.addProperty("WebService中该方法中的参数1名称", 参数1的值); rpc.addProperty("WebService中该方法中的参数2名称", 参数2的值); //.....有几个参数设置几个值 SoapSerializationEnvelopeenvelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.bodyOut = rpc; envelope.dotNet= true; envelope.setOutputSoapObject(rpc); HttpTransportSE ht = newHttpTransportSE(URL); ht.debug =true; ht.call(null,envelope); SoapObjectresult = (SoapObject)envelope.bodyIn; String vf=result.getProperty("所调用的WebService该方法返回值参数名").toString(); //vf就是你获取的返回值 } catch (Exception e) { e.printStackTrace(); }
相关文章推荐
- android平台实现通过调用WebService获取服务器信息--------------cocos2d-x3.0正式版本(7.11)
- android客户端与服务器交互数据(基于SAOP协议的远程调用标准,通过webservice可以将不同操作系统平台,不同语言,不同技术整合)
- 我的Android进阶之旅------>Android通过调用Webservice实现手机号码归属地查询
- Android通过调用Webservice实现天气预报
- Android之通过向WebService服务器发送XML数据获取相关服务
- android-基于Webservice实现天气信息获取及源码下载(二)
- 我的Android进阶之旅------>Android通过调用Webservice实现天气预报
- android-基于Webservice实现天气信息获取及源码下载(二)
- android-基于Webservice实现天气信息获取及源码下载(三)
- Android通过调用Webservice实现天气预报
- Servlet+msql+ android客户端实现从服务器获取信息
- Android发送SOAP数据给服务器调用webservice,实现手机号归属地查询
- 使用android-rss库实现从网络中获取rss信息,并通过ListView显示
- Android发送SOAP数据给服务器调用webservice,实现手机号归属地查询
- android-基于Webservice实现天气信息获取及源码下载(一)
- Android--通过Http协议向web服务器发送XML数据和调用webService
- Android之通过向WebService服务器发送XML数据获取相关服务
- 实现pc端通过usb获取到android手机上的短信、通讯录等信息
- 调用对象[置顶] Android通过调用Webservice实现天气预报
- 实现pc端通过usb获取到android手机上的短信、通讯录等信息