AndroidのHTMLから電話をかけることはできますか?


84

iPhoneでHTML経由で電話をかけるに<A/>は、次の形式のhrefを使用してタグを作成します<a href='tel:123-555-1212'>Dial Me</a>

Android上のHTMLに相当するものはありますか?

明確化-href = 'tele:123-555-1212'の形式を使用すると、Androidで実際に機能します。デバイスのネイティブJavaラッパー内でアプリをテストしていました。ネイティブラッパーでホストされているWebアプリケーションから電話をかけることができるようには見えません。

回答:


128

はい、できます。Androidでも動作します:

tel:phone_number
入力した電話番号に電話をかけます。IETF RFC3966で定義されている有効な電話番号が受け入れられます。有効な例は次のとおりです。

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

Androidブラウザーは、RFC 3966で定義されている
ように、電話アプリを使用して「tel」スキームを処理します。次のようなリンクをクリックします。

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

Androidでは、電話アプリが表示され、自動ダイヤルせずに2125551212の数字を事前に入力します。

RFC3966ご覧ください


リンクをクリックすると、iPhoneは自動的に通話を開始します(自動ダイヤル)?またはそれはAndroidのようなものですか?(ダイヤラを開き、通話ボタンを押す必要があります)。
エンリケ

7
これがあることを確認してください:Manifest.xmlの<uses-permission android:name = "android.permission.CALL_PHONE" />
jasonflaherty 2012年

25

Webページから電話をかけることができるアプリを書いたばかりです。これがあなたの役に立つかどうかはわかりませんが、とにかく以下を含めます。

onCreateで、以下のようにWebビューを使用して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;
        }
    }
}

さらにポインタが必要な場合はお知らせください。


1
ありがとう-ええ、それは良いアプローチです!最終的にJavaScriptからaddJavascriptInterfaceを使用してアプリへのアクセスを追加しました
Kevin

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>

両方のデバイスをカバーしますが、これがどれだけうまくいくかはわかりません。すぐに試してみて、お知らせします。

編集:SenseUIでルート化されたRogers1.5を実行しているHTCMagicでこれを試してみました:

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>

リンクを囲み、電話番号を印刷する最初のものは、完全に機能しました。ハイフンとすべてでダイヤラを引き上げました。2つ目はour number、リンクで言って、まったく同じように機能しました。これは、使用<a href='tel:xxx-xxx-xxxx'>が全面的に機能するはずであることを意味しますが、私は私の1つのテストを決定的なものとしてとることをお勧めしません。

番号に直接リンクすると、期待どおりになりました。サーバーから存在しないファイルをプルアップしようとしました。

最後のものは私が上で述べたように行い、ダイヤラーを引き上げましたが、素敵なフォーマットのハイフンはありませんでした。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.