android fw调试 按键派发给谁

在android维护或者开发的时候,经常和应用的同事干仗。

原因就是某些测试情况下,按键或者点击没有被相应。

app同事说:我草,你大爷,我就没收到,我没法相应。

这个时候为了打脸,你就需要在fw添加log,打印的log可以清楚的看到,事件到底派发给谁了。

文件view.java中函数

    public boolean performClick() {
        sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);

        ListenerInfo li = mListenerInfo;
        if (li != null && li.mOnClickListener != null) {
            playSoundEffect(SoundEffectConstants.CLICK);
            li.mOnClickListener.onClick(this);
            return true;
        }

        return false;
    }
就在此函数中添加log即可。

通过打印this及是否返回true来看:是派发给谁了,这个谁有没有响应,或者根本就没有设置onlick的listener。

    public boolean performClick() {
        sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);

        ListenerInfo li = mListenerInfo;
        if (li != null && li.mOnClickListener != null) {
            playSoundEffect(SoundEffectConstants.CLICK);
            li.mOnClickListener.onClick(this);
            android.util.Slog.d("TAG=======>VIew", " performClick   this:"+this);
            return true;
        }
	android.util.Slog.d("TAG=======>VIew", " performClick false  this:"+this);
 return false; }


发布了71 篇原创文章 · 获赞 22 · 访问量 20万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章