private Runnable mScrollView = new Runnable() {
@Override
public void run() {
scrollview.scrollTo(0, 30);//改变滚动条的位置
}
};
在需要的地方调用mHandler.post(mScrollView);
Connection reset by peer的常见原因:
1)服务器的并发连接数超过了其承载量,服务器会将其中一些连接关闭;
如果知道实际连接服务器的并发客户数没有超过服务器的承载量,则有可能是中了病毒或者木马,引起网络流量异常。可以使用netstat -an查看网络连接情况。
2)客户关掉了浏览器,而服务器还在给客户端发送数据;
3)浏览器端按了Stop;
这两种情况一般不会影响服务器。但是如果对异常信息没有特别处理,有可能在服务器的日志文件中,重复出现该异常,造成服务器日志文件过大,影响服务器的运行。可以对引起异常的部分,使用try...catch捕获该异常,然后不输出或者只输出一句提示信息,避免使用e.printStackTrace();输出全部异常信息。
4)防火墙的问题;
如果网络连接通过防火墙,而防火墙一般都会有超时的机制,在网络连接长时间不传输数据时,会关闭这个TCP的会话,关闭后在读写,就会导致异常。 如果关闭防火墙,解决了问题,需要重新配置防火墙,或者自己编写程序实现TCP的长连接。实现TCP的长连接,需要自己定义心跳协议,每隔一段时间,发送一次心跳协议,双方维持连接。
5)JSP的buffer问题。
JSP页面缺省缓存为8k,当JSP页面数据比较大的时候,有可能JSP没有完全传递给浏览器。这时可以适当调整buffer的大小。 <%@ page buffer="100k"%>
常见网络异常(转自http://www.cnblogs.com/kaixin110/archive/2008/04/11/1148671.html):
第1个异常是java.net.BindException:Address already in use: JVM_Bind。该异常发生在服务器端进行new ServerSocket
(port)(port是一个0,65536的整型值)操作时。异常的原因是以为与port一样的一个端口已经被启动,并进行监听。此时用
netstat –an命令,可以看到一个Listending状态的端口。只需要找一个没有被占用的端口就能解决这个问题。
第2个异常是java.net.ConnectException: Connection refused: connect。该异常发生在客户端进行 new Socket(ip, port)
操作时,该异常发生的原因是或者具有ip地址的机器不能找到(也就是说从当前机器不存在到指定ip路由),或者是该ip存在
,但找不到指定的端口进行监听。出现该问题,首先检查客户端的ip和port是否写错了,如果正确则从客户端ping一下服务器
看是否能 ping通,如果能ping通(服务服务器端把ping禁掉则需要另外的办法),则看在服务器端的监听指定端口的程序是否
启动,这个肯定能解决这个问题。
第3个异常是java.net.SocketException: Socket is closed,该异常在客户端和服务器均可能发生。异常的原因是己方主动关
闭了连接后(调用了Socket的close方法)再对网络连接进行读写操作。
第4个异常是java.net.SocketException: (Connection reset或者 Connect reset by peer:Socket write error)。该异常
在客户端和服务器端均有可能发生,引起该异常的原因有两个,第一个就是如果一端的Socket被关闭(或主动关闭或者因为异
常退出而引起的关闭),另一端仍发送数据,发送的第一个数据包引发该异常 (Connect reset by peer)。另一个是一端退出
,但退出时并未关闭该连接,另一端如果在从连接中读数据则抛出该异常(Connection reset)。简单的说就是在连接断开后
的读和写操作引起的。
第5个异常是java.net.SocketException: Broken pipe。该异常在客户端和服务器均有可能发生。在第4个异常的第一种情况中
(也就是抛出SocketExcepton:Connect reset by peer:Socket write error后),如果再继续写数据则抛出该异常。前两个异
常的解决方法是首先确保程序退出前关闭所有的网络连接,其次是要检测对方的关闭连接操作,发现对方关闭连接后自己也要
关闭该连接。
客户端错误代码10053 Software caused connection abort(软件原因导致连接中断)
http://www.mobileuncle.com/download/2010/0919/2163.html
每次与PC联机都要将数据线连上,而拷贝文件的速度并不是十分理想,那么有什么办法能够让PC与PPC之间共享文件,不耗费时间且没有线缆的束缚呢?答案是简单的,只要按照下面教程中的做法,就能轻松让你通过WIFI与PC进行联机共享。
共享设置需求:
A、无线路由器一台
B、电脑端:Windows 系统(本文以XP为例)
C、PPC手机端:WM 6.0以上系统 + Resco Explorer
D、手机品牌不限,只要有WiFi,就算是山寨机只要有Windows Mobile 系统,亦可轻松设置
E、电脑品牌更不限
F、电脑与PPC必须同在同一网络、同一IP段内。最佳方式就是以同一台无线路由器作为本地网内的DHCP
G、电脑连接无线路由器的方式:有线、无线均可
电脑端设置方式:以系统为Windows XP为例
1、打开控制面板-用户帐户,点击"Guest"来宾帐户,启用此帐户
2、为你的日常使用帐户设置一个密码,一定要设置密码,不然你的电脑将不能被PPC访问;且你的电脑处于十分的不安全状态,设置用户帐户密码时不必将此密码设为私有。
3、设置电脑硬盘共享资源:
电脑端的设置至此基本完成。
手机端设置方式也十分简单:
1、打开无线网络(即WiFi)-连接无线路由器-确认连接成功且与电脑在同一网段内。
2、打开Resco Explorer。
3、点击左软键-向上-到达目录顶层-会有"我的网络"这一项。
4、点击打开"我的网络"。
5、点击右键菜单-文件-网络-映射-
6、是否看到以下类似的画面?点击共享!
7、设置连接,输入在刚才电脑的控制面板上已经设置好的用户名及密码:点击完成
8、看见你自己电脑共享硬盘上的数据目录文件了吗?可以试着再进入电脑硬盘的子目录看看?
至此,PPC手机既可以通过WIFI简单地访问PC端的文件,不用频繁地使用同步软件进行文件传输。