android ksoap2 访问webservice,连续两次调用时,第二次调用异常(转)
1.
代码如下 | 复制代码 |
Webservice.GetVcardByUserNo(String userId,String userNo); |
这个是封装了的webservice接口。
2.在程序中连续两次调用该接口时,ksoap2在解析第二次调用返回的结果时抛异常。
异常信息如下:
代码如下 | 复制代码 |
org.xmlpull.v1.XmlPullParserException: unexpected type (position:END_DOCUMENT null@1:0 in java.io.InputStreamReader@4383bf38) |
3.打断点调试时,不会出现该异常。
4.无奈之下使用android 的HttpURLConnection 直接调用webservice接口,直接使用时不会发生以上异常,所以使用ksoap2 访问webservice需要设置什么呢?
5.使用HttpUrlConnection访问webserivice代码如下:
(一)连接webservice
代码如下 | 复制代码 |
String ServerUrl="webservice地址"; String data=""; String requestData="<?xml version="1.0" encoding="utf-8"?>rn"+ "</soap:Envelope>"; try{ data=parser(inStream); |
(二)解析返回的数据
代码如下 | 复制代码 |
private static String parser(InputStream in){ }catch(XmlPullParserException e){ |
效果图:
代码如下 | 复制代码 |
MainActivity public class MainActivity extends Activity { public void onCreate(Bundle savedInstanceState) { private final class Contact { //Html调用此方法传递数据 |
HTML:
代码如下 | 复制代码 |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <script type="text/javascript"> function show(jsondata){ var jsonobjs = eval(jsondata); var table = document.getElementById("personTable"); for(var y=0; y<jsonobjs.length; y++){ var tr = table.insertRow(table.rows.length); var td1 = tr.insertCell(0); var td2 = tr.insertCell(1); td2.align = "center"; var td3 = tr.insertCell(2); td3.align = "center"; td1.innerHTML = jsonobjs[y].name; td2.innerHTML = jsonobjs[y].amount; td3.innerHTML = "<a href='javascript:contact.call(""+ jsonobjs[y].phone+ "")'>"+ jsonobjs[y].phone+ "</a>"; } } </script> </head> <body onload="javascript:contact.showcontacts()"> <table border="0" width="100%" id="personTable" cellspacing="0"> <tr> <td width="30%">姓名</td> <td width="30%" align="center">存款</td> <td align="center">电话</td> </tr> </table> </body> </html> |
拨打电话需要添加权限:
代码如下 | 复制代码 |
<uses-permission android:name="android.permission.CALL_PHONE" /> |
代码如下 | 复制代码 |
//----------------- DirTraversal.java import java.io.File; //no recursion
public static ArrayList<File> refreshFileList(String strPath) { if (files == null) //----------------- ZipUtils.java import java.io.*; /** /** /** /** /** File desDir = new File(folderPath); ZipFile zf = new ZipFile(zipFile); /** /** } /** /** /** |
1.AndEngine源码和例子代码地址:
Google Code:http://code.google.com/p/andengine/
AndEngine主页:http://www.andengine.org/
example地址:http://code.google.com/p/andengineexamples/
2.代码下载
先安装TortoiseHg,然后在想要存放代码的目录右键-->TortoiseHg-->clone
hg clone https://andengine.googlecode.com/hg/andengine
3.lib包下载
andengineexamples->Source->Browse->hg->lib(libs->armeabi)->点击想下载的Filename->View raw file
4.入门文章
中文 http://blog.111cn.net/cping1982/archive/2011/03/06/6227775.aspx
英文 http://www.andengine.org/forums/ ... rial-list-t417.html
虽然听说AndEngine在某些型号的机型上有不稳定的情况出现,但决定学习这个引擎是因为它内置了BOX2D物理引擎,在手机上测试运行也比较流畅,效果很给力~~~希望大家喜欢
本文章简单的介绍了关于andengine入门教程之学习笔记,有需要学习的同学可以参考一下下哦。例子中主程序.launcher.ExampleLauncher主要继承自ExpandableListActivity的列表,
这里主要定义了另个枚举public enum ExampleGroup和enum Example ,平时因为像他们这样使用比较少,值得学习。
代码如下 | 复制代码 |
enum Example { // =========================================================== // Elements // ===========================================================
ANALOGONSCREENCONTROL(AnalogOnScreenControlExample.class, R.string.example_analogonscreencontrol), ANALOGONSCREENCONTROLS(AnalogOnScreenControlsExample.class, R.string.example_analogonscreencontrols), ANIMATEDSPRITES(AnimatedSpritesExample.class, R.string.example_animatedsprites), AUGMENTEDREALITY(AugmentedRealityExample.class, R.string.example_augmentedreality), AUGMENTEDREALITYHORIZON(AugmentedRealityHorizonExample.class, R.string.example_augmentedrealityhorizon), AUTOPARALLAXBACKGROUND(AutoParallaxBackgroundExample.class, R.string.example_autoparallaxbackground), BOUNDCAMERA(BoundCameraExample.class, R.string.example_boundcamera), CHANGEABLETEXT(ChangeableTextExample.class, R.string.example_changeabletext), COLLISIONDETECTION(CollisionDetectionExample.class, R.string.example_collisiondetection), COLORKEYTEXTURESOURCEDECORATOR(ColorKeyTextureSourceDecoratorExample.class, R.string.example_colorkeytexturesourcedecorator), COORDINATECONVERSION(CoordinateConversionExample.class, R.string.example_coordinateconversion), CUSTOMFONT(CustomFontExample.class, R.string.example_customfont), DIGITALONSCREENCONTROL(DigitalOnScreenControlExample.class, R.string.example_digitalonscreencontrol), EASEFUNCTION(EaseFunctionExample.class, R.string.example_easefunction), IMAGEFORMATS(ImageFormatsExample.class, R.string.example_imageformats), LEVELLOADER(LevelLoaderExample.class, R.string.example_levelloader), LINE(LineExample.class, R.string.example_line), LOADTEXTURE(LoadTextureExample.class, R.string.example_loadtexture), MENU(MenuExample.class, R.string.example_menu), MODPLAYER(ModPlayerExample.class, R.string.example_modplayer), MOVINGBALL(MovingBallExample.class, R.string.example_movingball), MULTIPLAYER(MultiplayerExample.class, R.string.example_multiplayer), MULTITOUCH(MultiTouchExample.class, R.string.example_multitouch), MUSIC(MusicExample.class, R.string.example_music), PAUSE(PauseExample.class, R.string.example_pause), PATHMODIFIER(PathModifierExample.class, R.string.example_pathmodifier), PARTICLESYSTEMNEXUS(ParticleSystemNexusExample.class, R.string.example_particlesystemnexus), PARTICLESYSTEMCOOL(ParticleSystemCoolExample.class, R.string.example_particlesystemcool), PARTICLESYSTEMSIMPLE(ParticleSystemSimpleExample.class, R.string.example_particlesystemsimple), PHYSICSCONLLISIONFILTERING(PhysicsCollisionFilteringExample.class, R.string.example_physicscollisionfiltering), PHYSICS(PhysicsExample.class, R.string.example_physics), PHYSICSFIXEDSTEP(PhysicsFixedStepExample.class, R.string.example_physicsfixedstep), PHYSICSJUMP(PhysicsJumpExample.class, R.string.example_physicsjump), PHYSICSREVOLUTEJOINT(PhysicsRevoluteJointExample.class, R.string.example_physicsrevolutejoint), PHYSICSREMOVE(PhysicsRemoveExample.class, R.string.example_physicsremove), PINCHZOOM(PinchZoomExample.class, R.string.example_pinchzoom), RECTANGLE(RectangleExample.class, R.string.example_rectangle), REPEATINGSPRITEBACKGROUND(RepeatingSpriteBackgroundExample.class, R.string.example_repeatingspritebackground), ROTATION3D(Rotation3DExample.class, R.string.example_rotation3d), SHAPEMODIFIER(ShapeModifierExample.class, R.string.example_shapemodifier), SHAPEMODIFIERIRREGULAR(ShapeModifierIrregularExample.class, R.string.example_shapemodifierirregular), SOUND(SoundExample.class, R.string.example_sound), SPLITSCREEN(SplitScreenExample.class, R.string.example_splitscreen), SPRITE(SpriteExample.class, R.string.example_sprite), SPRITEREMOVE(SpriteRemoveExample.class, R.string.example_spriteremove), STROKEFONT(StrokeFontExample.class, R.string.example_strokefont), SUBMENU(SubMenuExample.class, R.string.example_submenu), TEXT(TextExample.class, R.string.example_text), TEXTMENU(TextMenuExample.class, R.string.example_textmenu), TEXTUREOPTIONS(TextureOptionsExample.class, R.string.example_textureoptions), TMXTILEDMAP(TMXTiledMapExample.class, R.string.example_tmxtiledmap), TICKERTEXT(TickerTextExample.class, R.string.example_tickertext), TOUCHDRAG(TouchDragExample.class, R.string.example_touchdrag), UNLOADRESOURCES(UnloadResourcesExample.class, R.string.example_unloadresources), UPDATETEXTURE(UpdateTextureExample.class, R.string.example_updatetexture), XMLLAYOUT(XMLLayoutExample.class, R.string.example_xmllayout), ZOOM(ZoomExample.class, R.string.example_zoom),
BENCHMARK_ANIMATION(AnimationBenchmark.class, R.string.example_benchmark_animation), BENCHMARK_PARTICLESYSTEM(ParticleSystemBenchmark.class, R.string.example_benchmark_particlesystem), BENCHMARK_PHYSICS(PhysicsBenchmark.class, R.string.example_benchmark_physics), BENCHMARK_SHAPEMODIFIER(ShapeModifierBenchmark.class, R.string.example_benchmark_shapemodifier), BENCHMARK_SPRITE(SpriteBenchmark.class, R.string.example_benchmark_sprite), BENCHMARK_TICKERTEXT(TickerTextBenchmark.class, R.string.example_benchmark_tickertext),
APP_CITYRADAR(CityRadarActivity.class, R.string.example_app_cityradar),
GAME_SNAKE(SnakeGameActivity.class, R.string.example_game_snake), GAME_RACER(RacerGameActivity.class, R.string.example_game_racer);
// =========================================================== // Constants // ===========================================================
// =========================================================== // Fields // ===========================================================
public final Class<? extends BaseGameActivity> CLASS; public final int NAMERESID;
// =========================================================== // Constructors // ===========================================================
private Example(final Class<? extends BaseGameActivity> pExampleClass, final int pNameResID) { this.CLASS = pExampleClass; this.NAMERESID = pNameResID; }
// =========================================================== // Getter & Setter // ===========================================================
// =========================================================== // Methods for/from SuperClass/Interfaces // ===========================================================
// =========================================================== // Methods // ===========================================================
// =========================================================== // Inner and Anonymous Classes // =========================================================== } |
上面的public final Class<? extends BaseGameActivity> CLASS;表示任何继承自BaseGameActivity的类型,属于泛型,
因为andengine的例子程序都是继承自BaseGameActivity。
代码如下 | 复制代码 |
public enum ExampleGroup { // =========================================================== // Elements // ===========================================================
SIMPLE(R.string.examplegroup_simple, Example.LINE, Example.RECTANGLE, Example.SPRITE, Example.SPRITEREMOVE), MODIFIER_AND_ANIMATION(R.string.examplegroup_modifier_and_animation, Example.MOVINGBALL, Example.SHAPEMODIFIER, Example.SHAPEMODIFIERIRREGULAR, Example.PATHMODIFIER, Example.ANIMATEDSPRITES, Example.EASEFUNCTION, Example.ROTATION3D ), TOUCH(R.string.examplegroup_touch, Example.TOUCHDRAG, Example.MULTITOUCH, Example.ANALOGONSCREENCONTROL, Example.DIGITALONSCREENCONTROL, Example.ANALOGONSCREENCONTROLS, Example.COORDINATECONVERSION, Example.PINCHZOOM), PARTICLESYSTEM(R.string.examplegroup_particlesystems, Example.PARTICLESYSTEMSIMPLE, Example.PARTICLESYSTEMCOOL, Example.PARTICLESYSTEMNEXUS), MULTIPLAYER(R.string.examplegroup_multiplayer, Example.MULTIPLAYER), PHYSICS(R.string.examplegroup_physics, Example.COLLISIONDETECTION, Example.PHYSICS, Example.PHYSICSFIXEDSTEP, Example.PHYSICSCONLLISIONFILTERING, Example.PHYSICSJUMP, Example.PHYSICSREVOLUTEJOINT, Example.PHYSICSREMOVE ), TEXT(R.string.examplegroup_text, Example.TEXT, Example.TICKERTEXT, Example.CHANGEABLETEXT, Example.CUSTOMFONT, Example.STROKEFONT), AUDIO(R.string.examplegroup_audio, Example.SOUND, Example.MUSIC, Example.MODPLAYER), ADVANCED(R.string.examplegroup_advanced, Example.SPLITSCREEN, Example.BOUNDCAMERA ), // Example.AUGMENTEDREALITY, Example.AUGMENTEDREALITYHORIZON), BACKGROUND(R.string.examplegroup_background, Example.REPEATINGSPRITEBACKGROUND, Example.AUTOPARALLAXBACKGROUND, Example.TMXTILEDMAP), OTHER(R.string.examplegroup_other, Example.PAUSE, Example.MENU, Example.SUBMENU, Example.TEXTMENU, Example.ZOOM , Example.IMAGEFORMATS, Example.TEXTUREOPTIONS, Example.COLORKEYTEXTURESOURCEDECORATOR, Example.LOADTEXTURE, Example.UPDATETEXTURE, Example.XMLLAYOUT, Example.LEVELLOADER), APP(R.string.examplegroup_app, Example.APP_CITYRADAR), GAME(R.string.examplegroup_game, Example.GAME_SNAKE, Example.GAME_RACER), BENCHMARK(R.string.examplegroup_benchmark, Example.BENCHMARK_SPRITE, Example.BENCHMARK_SHAPEMODIFIER, Example.BENCHMARK_ANIMATION, Example.BENCHMARK_TICKERTEXT, Example.BENCHMARK_PARTICLESYSTEM, Example.BENCHMARK_PHYSICS);
// =========================================================== // Constants // ===========================================================
// =========================================================== // Fields // =========================================================== public final Example[] EXAMPLES; public final int NAMERESID;
// =========================================================== // Constructors // ===========================================================
private ExampleGroup(final int pNameResID, final Example ... pExamples) { this.NAMERESID = pNameResID; this.EXAMPLES = pExamples; }
// =========================================================== // Getter & Setter // ===========================================================
// =========================================================== // Methods for/from SuperClass/Interfaces // ===========================================================
// =========================================================== // Methods // ===========================================================
// =========================================================== // Inner and Anonymous Classes // =========================================================== } |
主程序就比较简单,不再介绍了。
相关文章
- 下面我们来看一篇关于Android子控件超出父控件的范围显示出来方法,希望这篇文章能够帮助到各位朋友,有碰到此问题的朋友可以进来看看哦。 <RelativeLayout xmlns:an...2016-10-02
- 这篇文章主要介绍了c# 三种方法调用WebService接口的相关资料,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下...2020-07-07
C#使用Http Post方式传递Json数据字符串调用Web Service
这篇文章主要为大家详细介绍了C#使用Http Post方式传递Json数据字符串调用Web Service,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25Android开发中findViewById()函数用法与简化
findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20- 如果我们的项目需要做来电及短信的功能,那么我们就得在Android模拟器开发这些功能,本来就来告诉我们如何在Android模拟器上模拟来电及来短信的功能。 在Android模拟...2016-09-20
- 夜神android模拟器如何设置代理呢?对于这个问题其实操作起来是非常的简单,下面小编来为各位详细介绍夜神android模拟器设置代理的方法,希望例子能够帮助到各位。 app...2016-09-20
- 为了增强android应用的用户体验,我们可以在一些Button按钮上自定义动态的设置一些样式,比如交互时改变字体、颜色、背景图等。 今天来看一个通过重写Button来动态实...2016-09-20
- 如果我们要在Android应用APP中加载html5页面,我们可以使用WebView,本文我们分享两个WebView加载html5页面实例应用。 实例一:WebView加载html5实现炫酷引导页面大多...2016-09-20
- 深入理解Android中View和ViewGroup从组成架构上看,似乎ViewGroup在View之上,View需要继承ViewGroup,但实际上不是这样的。View是基类,ViewGroup是它的子类。本教程我们深...2016-09-20
- 下面我们来看一篇关于Android自定义WebView网络视频播放控件开发例子,这个文章写得非常的不错下面给各位共享一下吧。 因为业务需要,以下代码均以Youtube网站在线视...2016-10-02
- java开发的Android应用,性能一直是一个大问题,,或许是Java语言本身比较消耗内存。本文我们来谈谈Android 性能优化之MemoryFile文件读写。 Android匿名共享内存对外A...2016-09-20
- TextView默认是横着显示了,今天我们一起来看看Android设置TextView竖着显示如何来实现吧,今天我们就一起来看看操作细节,具体的如下所示。 在开发Android程序的时候,...2016-10-02
- 这篇文章介绍了c#动态调用Webservice的两种方法实例,有需要的朋友可以参考一下...2020-06-25
android.os.BinderProxy cannot be cast to com解决办法
本文章来给大家介绍关于android.os.BinderProxy cannot be cast to com解决办法,希望此文章对各位有帮助呀。 Android在绑定服务的时候出现java.lang.ClassCastExc...2016-09-20- 这篇文章主要给大家介绍了关于c#中的WebService及其调用方式的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
- 这篇文章主要介绍了Android 实现钉钉自动打卡功能的步骤,帮助大家更好的理解和学习使用Android,感兴趣的朋友可以了解下...2021-03-15
- 下面我们来看一篇关于Android 开发之布局细节对比:RTL模式 ,希望这篇文章对各位同学会带来帮助,具体的细节如下介绍。 前言 讲真,好久没写博客了,2016都过了一半了,赶紧...2016-10-02
- 首先如果要在程序中使用sdcard进行存储,我们必须要在AndroidManifset.xml文件进行下面的权限设置: 在AndroidManifest.xml中加入访问SDCard的权限如下: <!--...2016-09-20
- 下面来给各位简单的介绍一下关于Android开发之PhoneGap打包及错误解决办法,希望碰到此类问题的同学可进入参考一下哦。 在我安装、配置好PhoneGap项目的所有依赖...2016-09-20
用Intel HAXM给Android模拟器Emulator加速
Android 模拟器 Emulator 速度真心不给力,, 现在我们来介绍使用 Intel HAXM 技术为 Android 模拟器加速,使模拟器运行度与真机比肩。 周末试玩了一下在Eclipse中使...2016-09-20