欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

[android]MonkeyRunner“java.net.SocketException: Broken pipe”错误解决办法

程序员文章站 2022-05-11 12:17:55
...
from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice
import time
import random
d=MonkeyRunner.waitForConnection()
d.wake()
for i in range(0,100):
#TOUCH|{'x':55,'y':795,'type':'downAndUp',}
        d.startActivity(action='android.intent.action.MAIN',component='cn.opda.a.phonoalbumshoushou/cn.com.opda.android.mainui.MainActivity')
#WAIT|{'seconds':4.0,}
#time.sleep(2)
#TOUCH|{'x':97,'y':460,'type':'downAndUp',}
        d.touch(69,116,MonkeyDevice.DOWN_AND_UP)
        time.sleep(2)
#TOUCH|{'x':240,'y':699,'type':'downAndUp',}
        d.touch(396,121,MonkeyDevice.DOWN_AND_UP)
        d.press('KEYCODE_HOME',MonkeyDevice.DOWN_AND_UP)


原来在开启activity之后sleep后总是在报java.net.SocketException: Broken pipe异常,检查脚本没有发生任何问题,在网络上也找不到该问题的解决办法,但是却能找到mysql出现这个问题的时候是什么原因,mysql出现该问题时,是后面使用的连接在前面失去了所以导致了这个问题。同理,在monkeyrunner上开启activity之后sleep容易使adb的连接失效,注释掉sleep后脚本生效。
相关标签: monkeyrunner