求助android调用webservice的问题

zdongliang 2012-09-21 10:10:49
代码来自
http://blog.csdn.net/lyq8479/article/details/6428288#reply

public String getRemoteInfo(String phoneSec) {

// 命名空间
String nameSpace = "http://WebXml.com.cn/";
// 调用的方法名称
String methodName = "getMobileCodeInfo";
// EndPoint
String endPoint = "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx";
// SOAP Action
String soapAction = "http://WebXml.com.cn/getMobileCodeInfo";

// 指定WebService的命名空间和调用的方法名
SoapObject rpc = new SoapObject(nameSpace, methodName);

// 设置需调用WebService接口需要传入的两个参数mobileCode、userId
rpc.addProperty("mobileCode", phoneSec);
rpc.addProperty("userId", "");

// 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);

envelope.bodyOut = rpc;
// 设置是否调用的是dotNet开发的WebService
envelope.dotNet = true;
// 等价于envelope.bodyOut = rpc;
envelope.setOutputSoapObject(rpc);

HttpTransportSE transport = new HttpTransportSE(endPoint);
try {
// 调用WebService
transport.call(soapAction, envelope);
} catch (Exception e) {
e.printStackTrace();
}

// 获取返回的数据
SoapObject object = (SoapObject) envelope.bodyIn;
// 获取返回的结果
return object.getProperty(0).toString();

// 将WebService返回的结果显示在TextView中

}

在虚拟机上调成正常,在android2.3的真机上调试也正常
在android4.0的真机上崩溃,请问有没有哪位大侠知道该怎么解决
...全文
399 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
qianshen88 2014-05-27
  • 打赏
  • 举报
回复
引用 10 楼 u010388497 的回复:
[quote=引用 8 楼 Aqu415 的回复:] [quote=引用 7 楼 astunner 的回复:] 4.0不允许主线程访问网络
对的![/quote]请问怎么改,按照网上的方法都不对[/quote] 你可以直接开启一个线程,构造传进来请求参数,在用Handler 把服务器返回的信息传出去。
GeorgeWang1994 2014-05-22
  • 打赏
  • 举报
回复
引用 8 楼 Aqu415 的回复:
[quote=引用 7 楼 astunner 的回复:] 4.0不允许主线程访问网络
对的![/quote]请问怎么改,按照网上的方法都不对
GeorgeWang1994 2014-05-22
  • 打赏
  • 举报
回复
引用 8 楼 Aqu415 的回复:
[quote=引用 7 楼 astunner 的回复:] 4.0不允许主线程访问网络
对的![/quote] 请问怎么改,按照网上的方法都不对
万物皆字节 2013-07-04
  • 打赏
  • 举报
回复
引用 7 楼 astunner 的回复:
4.0不允许主线程访问网络
对的!
astunner 2013-06-22
  • 打赏
  • 举报
回复
4.0不允许主线程访问网络
不简单de 2012-09-21
  • 打赏
  • 举报
回复
把错误log发上来
zdongliang 2012-09-21
  • 打赏
  • 举报
回复
没人关注自己顶下
zdongliang 2012-09-21
  • 打赏
  • 举报
回复
再补充点,错误是在三星的平板上运行的,不带拨号功能
zdongliang 2012-09-21
  • 打赏
  • 举报
回复
刚忙别的事去了
zdongliang 2012-09-21
  • 打赏
  • 举报
回复
09-21 16:16:00.570: E/TelephonyManager(4839): Hidden constructor called more than once per process!
09-21 16:16:00.600: W/System.err(4839): android.os.NetworkOnMainThreadException
09-21 16:16:00.600: W/System.err(4839): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1077)
09-21 16:16:00.600: W/System.err(4839): at java.net.InetAddress.lookupHostByName(InetAddress.java:477)
09-21 16:16:00.600: W/System.err(4839): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:277)
09-21 16:16:00.600: W/System.err(4839): at java.net.InetAddress.getAllByName(InetAddress.java:249)
09-21 16:16:00.600: W/System.err(4839): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:69)
09-21 16:16:00.600: W/System.err(4839): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:48)
09-21 16:16:00.600: W/System.err(4839): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection$Address.connect(HttpConnection.java:304)
09-21 16:16:00.600: W/System.err(4839): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:89)
09-21 16:16:00.600: W/System.err(4839): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHttpConnection(HttpURLConnectionImpl.java:292)
09-21 16:16:00.600: W/System.err(4839): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.makeConnection(HttpURLConnectionImpl.java:274)
09-21 16:16:00.600: W/System.err(4839): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:217)
09-21 16:16:00.600: W/System.err(4839): at org.ksoap2.transport.ServiceConnectionSE.connect(ServiceConnectionSE.java:46)
09-21 16:16:00.610: W/System.err(4839): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:68)
09-21 16:16:00.610: W/System.err(4839): at cn.sssteam.salonemenu.RegeditActivity.getRemoteInfo(RegeditActivity.java:100)
09-21 16:16:00.610: W/System.err(4839): at cn.sssteam.salonemenu.RegeditActivity.onCreate(RegeditActivity.java:42)
09-21 16:16:00.610: W/System.err(4839): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
09-21 16:16:00.610: W/System.err(4839): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1715)
09-21 16:16:00.610: W/System.err(4839): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1767)
09-21 16:16:00.610: W/System.err(4839): at android.app.ActivityThread.access$1500(ActivityThread.java:122)
09-21 16:16:00.610: W/System.err(4839): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1005)
09-21 16:16:00.610: W/System.err(4839): at android.os.Handler.dispatchMessage(Handler.java:99)
09-21 16:16:00.610: W/System.err(4839): at android.os.Looper.loop(Looper.java:132)
09-21 16:16:00.610: W/System.err(4839): at android.app.ActivityThread.main(ActivityThread.java:4028)
09-21 16:16:00.610: W/System.err(4839): at java.lang.reflect.Method.invokeNative(Native Method)
09-21 16:16:00.610: W/System.err(4839): at java.lang.reflect.Method.invoke(Method.java:491)
09-21 16:16:00.610: W/System.err(4839): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844)
09-21 16:16:00.610: W/System.err(4839): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
09-21 16:16:00.610: W/System.err(4839): at dalvik.system.NativeStart.main(Native Method)
09-21 16:16:00.610: D/AndroidRuntime(4839): Shutting down VM
dong3560 2012-09-21
  • 打赏
  • 举报
回复
贴个log啊 亲

80,348

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧