2010-05-05 104 views
77

要在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應用程序進行調用。

回答

118

是的,你可以;它適用於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

19

通常在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'>應該全面工作,但我不建議以我的一項測試作爲結論。

直接連接到該數字是否符合預期:試圖從服務器上拉出不存在的文件。

最後一個做了我上面提到的,並拉起撥號器,但沒有漂亮的格式連字符。

21

我剛纔寫的應用程序,它可以從網頁撥打電話 - 我不知道這是否是使用任何給你,但我無論如何包括:

在你的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