试图在Nexus 7与棒棒堂使用的咖啡(即GoogleInstrumentationTestRunner
)运行与UI相关的代码测试提供了以下错误:使用Lollipop(Android 21)使用Espresso有什么解决方法吗?
java.lang.IllegalStateException: This message cannot be recycled because it is still in use. at android.os.Message.recycle(Message.java:279) at com.google.android.apps.common.testing.ui.espresso.base.UiControllerImpl.loopUntil(UiControllerImpl.java:468) at com.google.android.apps.common.testing.ui.espresso.base.UiControllerImpl.loopMainThreadUntilIdle(UiControllerImpl.java:337) at com.google.android.apps.common.testing.ui.espresso.ViewInteraction$1.run(ViewInteraction.java:94) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
这显然是一个known issue for several months但既然已经有no commits since January 8目前还不清楚是否会有官方解决方案。
没有在规定
Just removing message.recycle(); seems to fix it...
这是一个有效的解决办法话题评论?如果没有,那么正确的解决方案是什么?
谢谢!很高兴你可以在7月1日之后重新回答你的原始帖子。 – Jedidja 2014-11-25 13:11:48
感谢你发布该视频的链接。 – Jedidja 2014-11-25 13:15:15
嘿,我卡住了,你的答案似乎解决了我的问题。 从哪个类我需要删除recycle()方法? – Patrick 2014-12-22 12:25:28