将sms:?body = xyz传递给android webview中的默认浏览器

时间:2012-09-30 13:33:17

标签: android android-webview

我正在使用Webview进行显示html页面 页面有像

这样的链接

<a href="sms:body=xym">Forward</a>

在Opera和默认浏览器中工作正常 但是使用webview不在应用程序中工作

我尝试下面的代码,但没有工作

    public boolean shouldOverrideUrlLoading(WebView myWebView, String url) {
        if (url != null && url.startsWith("sms:?")) {
            myWebView.getContext().startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
            return true;
        } else {
            return false;
        }
    }

2 个答案:

答案 0 :(得分:0)

您的代码中存在错误。

应该是

if (url != null && url.startsWith("sms")) {

此外:如果您正在显示正在显示的网页,则可能需要包含phonegap库(如果尚未包含)。这意味着要处理那些事情。

答案 1 :(得分:0)

您需要使用正确的类型创建单独的SMS意图,并为应用程序提供SMS写入权限。

Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address", "Phone number scrapped from url");
smsIntent.putExtra("sms_body","Body of Message scrapped from url");
startActivity(smsIntent);