android - 让 Android WebView 检测并弹出电子邮件对话框或电话对话框

标签 android android-webview

在 android 上,当内置浏览器遇到电子邮件或电话号码并按下时,每个都会出现一个对话框。

但是,如果我在我的应用程序的 webview 中导航到该 url,情况就不再是这样了。

在检测电子邮件和电话号码以及在按下时弹出相应的默认对话框方面,我的 webview 是否可以显示与浏览器应用程序相同的属性?

我知道 iPhone 可以很容易地在 Interface Builder 中使用复选框来做到这一点,我希望 android 也能做到这一点。

我查看了以下链接:

Is there any way to have WebView auto-link URLs and phone numbers in Android?

并使用中断链接点击的功能,但这对我没有真正帮助,因为电话号码和电子邮件不一定必须链接。

最佳答案

这是电话链接,您可以添加另一个 if 到邮件链接:)

public boolean shouldOverrideUrlLoading(WebView view, String url) {
        if (url.startsWith("tel:")) { 
                Intent intent = new Intent(Intent.ACTION_DIAL,
                        Uri.parse(url)); 
                startActivity(intent); 
        }else if(url.startsWith("http:") || url.startsWith("https:")) {
            view.loadUrl(url);
        }
        return true;
    }

关于android - 让 Android WebView 检测并弹出电子邮件对话框或电话对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3401059/

相关文章:

android - 如果 webview 中的 url 相同,如何开始第三个 Activity

android - 无法在 Android 中使用 WebView 加载网页

android - FCM 数据消息不发送最新的数据负载

java - android中如何初始化类的字段?

android - 如何使用 SearchView 过滤 RecyclerView

android - 在 Android 2.2 中以编程方式启动 'Add Account' Activity

javascript - 外部元素边距不等于内部元素边距

android - android webview 中的后退按钮?

android - 如何在应用程序中创建 session 对象

android - 我的自定义首选项消失后如何清理