如何查看所有系统生成的Intents?

时间:2013-09-25 06:10:31

标签: android android-intent onhover

有没有办法查看Android操作系统随时生成但可能被活动过滤的所有意图?具体来说,我正在测试onHoverListener - 我想知道我的活动是否丢弃了悬停动作事件或是否正在生成(系统无法/其他问题)

理想情况下,我想要记录我的活动的所有意图 - 但其他一些技巧也没关系。

2 个答案:

答案 0 :(得分:0)

Android意图是能够启动新活动,服务,完成任何操作,即发送电子邮件,点击照片,从内容提供商处获取数据等。 捕获任何此类意图,您需要使用与系统意图相同的操作注册到您的活动的意图过滤器。[如果相同的意图被触发,框架将选择您的actvity / app,因此您可能能够如果用户喜欢这些意图,那就截取这些意图]这可能有点太多,因为会为不同的Android组件声明这么多动作。但是一些流行的例子是发送短信,选择联系人,发送邮件。 有关详细信息,请参阅此处:http://developer.android.com/guide/components/intents-filters.html

事件和意图是完全不同的,您的应用程序生成的所有事件都将转到UI线程的事件处理程序队列。 因此,为了拦截,您应该为活动组件设置适当的事件侦听器。

答案 1 :(得分:0)

尝试使用onTouch。 setOnTouchListener(new OnTouchListener(){

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        if(event.getAction() == MotionEvent.ACTION_DOWN){
            //Button Pressed
        }
        if(event.getAction() == MotionEvent.ACTION_UP){
             //finger was lifted
        }
        return false;
    }`