У меня есть приложение с WebView, которое загружает список телефонных номеров.На некоторых устройствах пользователи не могут выполнять вызовы, нажимая номер телефона.
Существуют две страницы: страница A и страница B. Когда я загружаю страницу A, пользователь может выполнить вызов, но нана том же устройстве, если они загружают страницу B, они не могут выполнить вызов.
Я проверил загрузку обеих страниц из мобильных веб-браузеров и веб-браузера с ПК.В обоих случаях A и B работают нормально.Если это из-за чего-то не так с моей настройкой WebView, пользователь не может позвонить со страницы A. Но пользователь может.
Я понятия не имею, что происходит.
shouldOverrideUrlLoading
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.startsWith("tel:")) {
makePhoneCall(url);
return true;
}
return false;
}
makePhoneCall ()
public void makePhoneCall(String phoneNumber) {
if (ContextCompat.checkSelfPermission(MainActivity.this,
Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.CALL_PHONE}, REQUEST_CALL);
checkPermissions();
} else {
startActivity(new Intent(Intent.ACTION_CALL, Uri.parse(phoneNumber)));
}
}