android soap webservers 无法执行 报错 ht.call(SOAP_ACTION, envelope);解决方法
1.可能没有加入网络访问权限,在Manifest里面加入,<uses-permission android:name="android.permission.INTERNET"/>
2.版本问题,很可能的问题,因为在android高于9的会出错,所以简单粗暴的办法就是,直接将版本信息
<uses-sdk
        android:minSdkVersion="?"
        android:targetSdkVersion="?"
/>
删除即可。
其他具体参考代码如下:
package com.example.soaptestforandroid; import java.io.IOException; import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.xmlpull.v1.XmlPullParserException; import android.os.*;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.widget.*; public class MainActivity extends Activity
{ private static final String SERVICE_NAMESPACE = "http://services.jason.com/";
private static final String SERVICE_URL = "http://172.16.1.164:8080/MyWebServer/UserInfoPort?wsdl";
private EditText tv = null; @SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); try {
tv = (EditText) findViewById(R.id.hello); //如果本系统为4.0以上(Build.VERSION_CODES.ICE_CREAM_SANDWICH为android4.0)
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
// 详见StrictMode文档
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectDiskReads().detectDiskWrites().detectNetwork()
.penaltyLog().build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
.detectLeakedSqlLiteObjects().detectLeakedClosableObjects()
.penaltyLog().penaltyDeath().build());
} // 调用的方法
String mathodName = "GetUserInfo";
String SOAP_ACTION = SERVICE_NAMESPACE + mathodName;
// 创建HttpTransportSE对象
HttpTransportSE ht = new HttpTransportSE(SERVICE_URL); ht.debug = true;
// 使用soap协议创建Envelop对象
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER10);
// 实例化SoapObject对象
SoapObject object = new SoapObject(SERVICE_NAMESPACE, mathodName);
// 将SoapObject对象设置为SoapSerializationEnvelope对象的传出SOAP消息
envelope.bodyOut = object;
envelope.dotNet = true;
envelope.setOutputSoapObject(object);
// 调用webService
ht.call(SOAP_ACTION, envelope);
System.out.println("envelope.getResponse()---"
+ envelope.getResponse());
if (envelope.getResponse()!= null) { SoapObject result = (SoapObject) envelope.bodyIn;
String name = result.getProperty(0).toString();
System.out.println(name);
tv.setText("返回值为:" + name); } else {
tv.setText("无返回值");
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } @Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} }
android soap webservers 无法执行 报错 ht.call(SOAP_ACTION, envelope);解决方法的更多相关文章
- vs2010一运行就报错deven.exe assert failure 解决方法,卸载系统中.netFramework最新版本的(简体中文)
		vs2010一运行就报错deven.exe assert failure 解决方法,卸载系统中.netFramework最新版本的(简体中文) 
- jmeter执行报错:java.lang.UnsupportedClassVersionError解决办法
		做个记录. 问题记录: jmeter版本:5.4.1 本地Java版本:1.8.0_151 执行jmeter,报错: 2022-10-14 12:06:27,372 ERROR o.a.j.JMete ... 
- 阿里云安装kubernetes-UI报错endpoints \"kubernetes-dashboard\" not found解决方法
		问题:阿里云ECS安装kube-ui v5后,访问 http://master_ip:8080/ui/跳转到http://master_ip:8080/api/v1/proxy/namespaces/ ... 
- Arcgis Javascript中geometryEngine报错’hq‘of undefined的解决方法
		这个问题困扰了我一个星期,原因是使用geomagicbuffer时候,有的线可正常使用,有的就直接报错,一直没有解决,后来发现是api自己的bug导致的 干脆直接读代码,在geometryEngine ... 
- AFNetwork2.0在报错1016,3840的解决方法及一些感悟
		最近在学习AFNetwork,非常好的网络框架,能节省很多时间.不过请求网络数据时报错1016,3840. 这两个错误网上解决方法很多,http://blog.csdn.net/huifeidexin ... 
- Github上LeakCanary编译报错CreateProcess error=2的解决方法
		现象说明: 从github上拉下LeakCanary编译时报错 CreateProcess error=2, ϵͳÕҲ»µ½ָ¶ 原因分析: 该现象是由于Windows中Gradle调用命令未加cmd ... 
- Android 在Fragment中执行onActivityResult不被调用的简单解决方法
		在Android开发中,我们经常会用到FragmentActivity下嵌套多个Fragment,但是在开发过程中会发现在嵌套的Fragment中使用onActivityResult回调方法没有被执行 ... 
- ExtJs6编译之后上线报错无法查看到的解决方法
		最近Extjs编译后部署遇到了一个错误c is not a constructor,报错位置在app.js里,这根本没法找 解决方法:用命令sencha app build testing 编译之后, ... 
- 网页视频不能自动播放?HTML5 video报错Uncaught (in promise) DOMException解决方法
		话说发哥四年前写了一个网页,如上图效果,实际网址http://pano.z01.com ,话说做好时是正常的,突然某一天,客户说你这个网站动画不见了,这是什么原因? 结果检查脚本一切正常. 其实也不是 ... 
随机推荐
- JS原型、原型链、构造函数、实例与继承
			https://cloud.tencent.com/developer/article/1408283 https://cloud.tencent.com/developer/article/1195 ... 
- C++ C++ 值传递、指针传递、引用传递详解
			这一篇博客写的不错: https://www.cnblogs.com/dingxiaoqiang/p/8012578.html 
- Bootstrap历练实例:带有下拉菜单的标签和胶囊导航
			<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ... 
- Spring框架针对dao层的jdbcTemplate操作crud之delete删除数据库操作 Spring相关Jar包下载
			首先,找齐Spring框架中IoC功能.aop功能.JdbcTemplate功能所需的jar包,当前13个Jar包 1.Spring压缩包中的四个核心JAR包,实现IoC控制反转的根据xml配置文件或 ... 
- IP数据包的校验和算法
			1.算法思路: IP/ICMP/IGMP/TCP/UDP等协议的校验和算法都是相同的,算法如下: 在发送数据时,为了计算IP数据包的校验和.应该按如下步骤: (1)把IP数据包的校验和字段置为0: ( ... 
- ios 团购信息客户端demo(二)
			接上一篇,这篇我们对我们的客户端加入KissXML,MBProgressHUD,AQridView这几个库,首先我们先加入KissXML,这是XML解析库,支持Xpath,可以方便添加更改任何节点.先 ... 
- 调用 C 动态库
			调用 C 动态库 由 王巍 (@ONEVCAT) 发布于 2015/11/04 C 是程序世界的宝库,在我们面向的设备系统中,也内置了大量的 C 动态库帮助我们完成各种任务.比如涉及到压缩的话我们很可 ... 
- django-ckeditor添加代码功能(codesnippet)
			最近做了一个博客,使用python3+django2.1开发的,后台编辑器和前端显示用的Django-ckeditor富文本编辑器,由于发现没有代码块功能,写上去的代码在前端展示有点乱,于是一顿问度娘 ... 
- MySQL开启日志跟踪
			在开发过程中有时候会遇到sql相关的问题,但是有时候代码中不会直接看到真实的sql,想要看到mysql中实际执行的是什么sql,可以通过开启日志跟踪方式查看. 1 开启日志跟踪 SET GLOBAL ... 
- PERL学习之模式匹配
			一.简介 模式指在字符串中寻找的特定序列的字符,由反斜线包含:/def/即模式def.其用法如结合函数split将字符串用某模式分成多个单词:@array = split(/ /, $line); ... 
