android – 处理具有自己意图的链接onClick事件

前端之家收集整理的这篇文章主要介绍了android – 处理具有自己意图的链接onClick事件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含电子邮件的textview,我希望能够点击它们在我自己的应用程序中启动活动.我正在使用Linkify.addLinks(TextView,Linkify.EMAIL_ADDRESSES)来使电子邮件可以点击,但是这会弹出一个选择器,询问用户他们想要打开电子邮件的应用程序.如何直接处理此事件以便我可以指定单击链接调用的活动?

解决方法

卡洛斯的回答很有效,但我也想用ACTION_VIEW作为我想要开始的外部意图.幸运的是,Linkify确实添加了应用程序ID作为意图的额外内容(对于浏览器兼容性),我的其他意图不添加,所以我使用以下逻辑来确保我正确处理Linkify意图:
@Override
public void startActivity(Intent intent) {
    boolean handled = false;

    if (TextUtils.equals(intent.getAction(),Intent.ACTION_VIEW)) {

        String app_id = intent.getStringExtra(Browser.EXTRA_APPLICATION_ID);
        if ( TextUtils.equals(getApplicationContext().getPackageName(),app_id) )
        {
            // This intent is a view coming from Linkify; handle internally
            //  << do something smart here >>
            handled = true;
        }
    }

    if (!handled)
        super.startActivity(intent);
}

猜你在找的Android相关文章