[android]MonkeyRunner“java.net.SocketException: Broken pipe”錯誤解決辦法

大搜車-自娛發表於2012-11-13
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後指令碼生效。

相關文章