React Native Linking Promise решено отклонить, не получив вызова - PullRequest
0 голосов
/ 01 октября 2019

Я использую компонент реагирования собственной ссылки для открытия диалога вызова приложения. Открывается диалоговое окно с предложением вызова, но когда я нажимаю «Отмена», оно не возвращает мне никакого обещания

static makePhoneCall = (mobileNumber) => 
{

let phoneNumber = '';

        if (Platform.OS === 'android') {
            let userMobile = `tel:${mobileNumber}`
            phoneNumber = userMobile;
        }
        else {
            let userMobile = `tel://${mobileNumber}`
            phoneNumber = userMobile;
        }
        Linking.openURL(phoneNumber).then(() => {
          alert('success')
        }).catch(() => {
            alert('failure')
        });
        return 'default`
    }

classname.makePhoneCall(this.state.item.mobileNumber)

Я хочу знать, как обрабатывать openUrlОбещаю на каком-то примере, у меня есть общий код того, что я сделал. Я использую реагирую родную версию 0.59.9

1 Ответ

0 голосов
/ 01 октября 2019

Вы должны проверить, доступно ли приложение для обработки URL-адреса.

Linking.canOpenURL(phoneNumber)
  .then((supported) => {
    if (!supported) {
      console.log("Can't handle url: " + url);
    } else {
      return Linking.openURL(url);
    }
  })
  .catch((err) => console.error('An error occurred', err));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...