monkey测试 com.android.quicksearchbox 模块,出现 and

[DESCRIPTION]


monkey测试com.android.quicksearchbox (快速搜索)模块时,会遇到类似这样的Exception:
// CRASH: com.android.quicksearchbox (pid 1267)
// Short Msg: android.view.WindowManager$BadTokenException
// Long Msg: android.view.WindowManager$BadTokenException: Unable to add window --
token null is not valid; is your activity running?
// android.view.WindowManager$BadTokenException: Unable to add window -- token null is
not valid; is your activity running?
// at android.view.ViewRootImpl.setView(ViewRootImpl.JAVA:646)
// at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:248)
// at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
// at com.android.internal.policy.impl.PhoneWindow.openPanel(PhoneWindow.java:660)
// at com.android.internal.policy.impl.PhoneWindow.onKeyUpPanel(PhoneWindow.java:869)
// at com.android.internal.policy.impl.PhoneWindow.onKeyUp(PhoneWindow.java:1542)
// at
com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.jav
a:1878)
// at android.view.ViewRootImpl.deliverKeyEventPostIme(ViewRootImpl.java:4118)
// at android.view.ViewRootImpl.deliverKeyEvent(ViewRootImpl.java:4036)
// at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3526)
// at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4783)
// at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4743)
// at
android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4895)
// at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:179)
// at android.os.MessageQueue.nativePollOnce(Native Method)
// at android.os.MessageQueue.next(MessageQueue.java:128)
// at android.os.Looper.loop(Looper.java:151)
// at android.app.ActivityThread.main(ActivityThread.java:5371)
// at java.lang.reflect.Method.invokeNative(Native Method)
// at java.lang.reflect.Method.invoke(Method.java:525)
// at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
// at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
// at dalvik.system.NativeStart.main(Native Method


[SOLUTION]


这是monkey issue,由monkey的测试机制导致。
Quicksearchbox 这个app从操作行为上来说,可以通过key event在下拉列表菜单中选中并切换
search activity,同时又可以通过key event(KEYCODE=82 MENU KEY)来叫起Menu popup window。
当这些key event不做任何判断、被随机发送给quick search box app时,如果恰好search
activity A叫起了menu popup window,然后又马上切换到search activity B,就会因为activity
A已经死掉,所以add menu popup window时就会因为找不到target activity而报出这样的JE。鉴于
monkey test的测试流程,会跳开framework input event的处理流程,不对activity的状态做任何
判断,就统统把key event直接发送给client端的activity,导致无法处理而报JE的结果。而正常操
作流程下,所有的Keyeven都会走framework input这一路,那么framework就会有机制对activity状
态做判断,然后才决定key event何去何从。
由于monkey test所走流程是跳开了framework input 这一路的判断和处理,所以这种问题内部建议
不需要解决。

 

 

 

此资料( monkey测试 com.android.quicksearchbox 模块,出现 and)转载于 一牛网
资料需要自己去下载,有需要的可以去论坛上面自己下载

转载于:https://www.cnblogs.com/yiliu16/p/5367999.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值