开发一个Android访问sqlserver服务器的app,服务器端用java写服务器端。
android端与服务器端通过socket连接
android socket放在application里面。
各个Activity启动时到application里面读取socket。
在一个activity里面,socket收发数据无论多少次都是正常的。
但同一activiy退出,再进入,重复操作8次以后,再次进入activity就socket连接中断了,这个8次是固定的。
不同activity之间切换8次,也是一样中断。
中断时,android端没有显示异常,java服务器端提示异常,readline读不到数据。
每个activiy启动时开启两个子线程,一个socketReadThread用循环读取数据,退出activity时关闭线程。一个socketWriteThread,用handler发送数据,这个退出时没有关闭。,,
大神帮我看看可能是什么情况。等于是activity之间切换不过8次都是正常的,到了第8次就必定发生中断。
中断的那一次activity启动时,两个子线程看着都是正常启动的,向服务器的发送的数据也是有发出,但是java服务器接收就出错了,但app没有心跳机制(若要问为什么没有,因为不会写啊),可能socket在启动前就已经中断,只是socket还不知道。
Android菜鸟级写手,以前业余写VB6.0的,不是职业程序员,现在硬着头皮写android,一边百度一边写,这个问题卡很久了,求高人们指点一下方向。
android端与服务器端通过socket连接
android socket放在application里面。
各个Activity启动时到application里面读取socket。
在一个activity里面,socket收发数据无论多少次都是正常的。
但同一activiy退出,再进入,重复操作8次以后,再次进入activity就socket连接中断了,这个8次是固定的。
不同activity之间切换8次,也是一样中断。
中断时,android端没有显示异常,java服务器端提示异常,readline读不到数据。
每个activiy启动时开启两个子线程,一个socketReadThread用循环读取数据,退出activity时关闭线程。一个socketWriteThread,用handler发送数据,这个退出时没有关闭。,,
大神帮我看看可能是什么情况。等于是activity之间切换不过8次都是正常的,到了第8次就必定发生中断。
中断的那一次activity启动时,两个子线程看着都是正常启动的,向服务器的发送的数据也是有发出,但是java服务器接收就出错了,但app没有心跳机制(若要问为什么没有,因为不会写啊),可能socket在启动前就已经中断,只是socket还不知道。
Android菜鸟级写手,以前业余写VB6.0的,不是职业程序员,现在硬着头皮写android,一边百度一边写,这个问题卡很久了,求高人们指点一下方向。
解决方案 »
- 实现一个Gallery,其中图片如何从网上取下来?
- Android编程获取root权限后无法访问/root和/data文件夹
- 请问如何在Android程序中实现来电转移功能??
- 实现BroadcastReceiver继承遇到的疑惑
- WebView电容屏上只要一触摸就自动缩放
- 【受不了了!】如何修改自带短信的白色背景以及整个系统的白色主题?
- java新手接触Android,求大虾指点学习方法
- 如何监听输入法选择窗口?
- android图文效果
- 关于sqlite数据库的关键字检索功能,求指教!
- 江湖救急,变态Json如何应对,请求大神指点
- 老哥们,在安卓6.0以上,我想在代码中改变文件的读写权限,不成功,可能是什么原因呢?
猜测:
服务器提示readline读取不到信息并抛出异常,因此把问题范围缩小到你的app。
activity启动第八次必然断开socket,那就打印下你的activity声明周期。重点打印:onCreate,onResume,onPause,onStop和onDestroy
这些方法都要。
内容包括,当前activity的哈希值(activity主线程直接打印this),打印socket的哈希值,如果socket不为空,再打印下socket的状态