Android - Как позвонить из веб-просмотра - PullRequest
9 голосов
/ 23 февраля 2012

В моем приложении я открываю URL с помощью веб-просмотра. Этот URL открывает некоторую страницу, которая содержит несколько телефонных номеров. Теперь я хочу сделать телефонный звонок, не открывая номеронабиратель телефона, если вы нажмете на номер телефона. Является ли это возможным? пожалуйста, кто-нибудь может мне помочь.

спасибо

Ответы [ 3 ]

17 голосов
/ 23 февраля 2012
public boolean shouldOverrideUrlLoading(WebView view, String url) {
        if (url.startsWith("tel:")) { 
                Intent intent = new Intent(Intent.ACTION_DIAL,
                        Uri.parse(url)); 
                startActivity(intent); 
        }else if(url.startsWith("http:") || url.startsWith("https:")) {
            view.loadUrl(url);
        }
        return true;
    }
4 голосов
/ 14 мая 2014

Спасибо, ДжекТюрки!Вот еще немного, чтобы показать, как это сочетается с webView:

    webView.setWebViewClient(new WebViewClient() {
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            if (url.startsWith("tel:")) { 
                    Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse(url)); 
                    startActivity(intent); 
                    return true;
            }
            return false;
        }           
    });
0 голосов
/ 21 февраля 2019
public boolean shouldOverrideUrlLoading(WebView view, String url) {

        Log.i("TEST","URL 4: "+url);

        if (url.startsWith("http:") || url.startsWith("https:")) {
            view.loadUrl(url);
        }else if (url.startsWith("tel:")) {
            Intent intent = new Intent(Intent.ACTION_DIAL);

            // Send phone number to intent as data
            intent.setData(Uri.parse(url));

            // Start the dialer app activity with number
            startActivity(intent);
        }

            return true;

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...