85

为了在 iPhone 上通过 HTML 拨打电话,我创建了一个<A/>带有 href 格式的标签:<a href='tel:123-555-1212'>Dial Me</a>

Android 上是否有 HTML 的等价物?

澄清 - 使用格式 href='tele:123-555-1212' 确实适用于 android。我正在设备上的本机 Java 包装器中测试该应用程序。似乎我们不能从托管在 Native Wrapper 中的 Web 应用程序进行调用。

4

3 回答 3

128

是的你可以; 它也适用于Android

电话:phone_number
拨打输入的电话号码。接受 IETF RFC 3966 中定义的有效电话号码。有效的例子包括:

* tel:2125551212
* tel: (212) 555 1212

Android 浏览器使用电话应用程序处理 RFC 3966 定义的“tel”方案。
单击如下链接:

<a href="tel:2125551212">2125551212</a>

在 Android 上将打开电话应用程序并预​​先输入 2125551212 的数字,而无需自动拨号。

看看RFC3966

于 2010-05-05T14:59:21.600 回答
25

我刚刚编写了一个可以从网页拨打电话的应用程序 - 我不知道这对您是否有用,但无论如何我包括:

在您的 onCreate 中,您需要使用 webview 并分配一个 WebViewClient,如下所示:

browser = (WebView) findViewById(R.id.webkit);
browser.setWebViewClient(new InternalWebViewClient());

然后像这样处理对电话号码的点击:

private class InternalWebViewClient extends WebViewClient {

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
         if (url.indexOf("tel:") > -1) {
            startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(url)));
            return true;
        } else {
            return false;
        }
    }
}

如果您需要更多指针,请告诉我。

于 2010-05-05T16:28:39.547 回答
21

一般在Android上,如果你只是简单地显示电话号码,用户点击它,它就会在拨号器中将其拉起。所以,你可以简单地做

For more information, call us at <b>416-555-1234</b>

当用户点击粗体部分时,由于它的格式类似于电话号码,拨号器会弹出,并显示4165551234在电话号码字段中。然后用户只需点击通话按钮。

你也许可以做

For more information, call us at <a href='tel:416-555-1234'>416-555-1234</a>

涵盖这两种设备,但我不确定这将如何运作。我会尽快试一试,然后告诉你。

编辑:我刚刚在我的 HTC Magic 上尝试使用 SenseUI 运行有根的 Rogers 1.5:

For more information, call us at <a href='tel:416-555-1234'>416-555-1234</a><br />
<br />
Call at <a href='tel:416-555-1234'>our number</a>
<br />
<br />
<a href='416-555-1234'>Blah</a>
<br />
<br />
For more info, call <b>416-555-1234</b>

第一个,围绕链接并打印电话号码,效果很好。用连字符和所有字符拉起拨号器。第二个,our number用链接说,工作完全一样。这意味着使用<a href='tel:xxx-xxx-xxxx'>应该全面有效,但我不建议将我的一项测试作为结论。

直接链接到该号码做了预期:试图从服务器上提取不存在的文件。

最后一个和我上面提到的一样,拉起拨号器,但没有漂亮的格式连字符。

于 2010-05-05T14:51:40.313 回答