我可以通过Android上的HTML拨打电话吗?

问题描述:

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

Android上有HTML版本吗?

CLARIFICATION - 使用格式href ='tele:123-555-1212'确实可以在android上使用。我正在设备上的本地Java包装中测试应用程序。它看起来并不像我们可以通过本地包装程序中托管的Web应用程序进行调用。

是的,你可以;它适用于Android太:

电话:PHONE_NUMBER
调用进入 电话号码。如IETF RFC 3966中定义的有效电话号码 接受 。有效的实例包括以下 :

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

Android的浏览器使用电话应用来处理“电话”方案,由RFC 3966
限定点击喜欢的链接:

<a href="tel:2125551212">2125551212</a> 
Android上的

将显示电话应用程序,并且在未自动拨号的情况下预先输入2125551212的数字。

,看一下RFC3966

+0

当你点击链接iphone自动调用自动(自动拨号)?或者它就像Android? (打开拨号器,并且您需要按通话按钮)。 – Enrique 2012-01-27 14:18:00

+6

请确保您的Manifest.xml文件中包含 jasonflaherty 2012-03-02 06:48:33

+2

这在webview中不起作用,为什么? – GMsoF 2013-08-27 02:57:47

通常在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一试运行植根罗杰斯1.5与SenseUI:

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> 

第一个以link周围和印刷的电话号码,工作完美。用连字符和全部拉出拨号器。第二,说our number与链接,工作完全一样。这意味着使用<a href='tel:xxx-xxx-xxxx'>应该全面工作,但我不建议以我的一项测试作为结论。

直接连接到该数字是否符合预期:试图从服务器上拉出不存在的文件。

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

我刚才写的应用程序,它可以从网页拨打电话 - 我不知道这是否是使用任何给你,但我无论如何包括:

在你的onCreate,你需要使用网页视图并分配WebViewClient,如下:

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

然后处理click在这样一个电话号码:

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 true; 
     } 
    } 
} 

让我知道你是否需要更多的指针。

M

+1

谢谢 - 是的,这是一个很好的方法! 我最终从JavaScript添加了对我的应用的访问w/addJavascriptInterface – Kevin 2010-05-05 17:01:37