Диалоговое окно подтверждения плагина Cordova не отправляет ответ на функцию, вызванную в Android, но делает это в Интернете - PullRequest
0 голосов
/ 05 июля 2018

Когда я использую этот код:

function dialogConfirm() {
    var message = "Am I Confirm Dialog?";
    var title = "CONFIRM";
    var buttonLabels = "YES,NO";
    navigator.notification.confirm(message, confirmCallback, title, buttonLabels);

function confirmCallback(buttonIndex) {
    navigator.notification.alert("You clicked " + buttonIndex + " button!",null,"helo","Nic");
}

 }

Однако на Android при развертывании с помощью Cordova и нажатии на одну из кнопок подтверждения предупреждение не появляется, поэтому я попытался с каким-то текстом, и обнаружил, что функция verifyCallBack никогда не вызывается, независимо от того, что я нажимаю, так что любой знать, что я могу сделать, чтобы вызвать функцию verifyCallBack или это просто ошибка с плагином в Android. Напоминаю, что в браузере Windows он работает отлично, поэтому проблема связана либо с библиотекой, либо с моим устройством, это Moto G 3-го поколения android 7.0.1 Заранее спасибо!

1 Ответ

0 голосов
/ 08 июля 2018

Ваши кнопки выбора - это строка вместо массива .

сообщение : диалоговое сообщение. (String)

verifyCallback : обратный вызов для вызова с индексом нажатой кнопки (1, 2 или 3) или когда диалог закрывается без нажатия кнопки (0). (Функция)

title : Название диалога. (Строка) (Необязательно, по умолчанию Подтвердить)

buttonLabels : Массив строк, определяющих метки кнопок. (Array) (Необязательно, по умолчанию [OK, Отмена])

Попробуйте этот пример из оригинальной документации плагина Dialogs :

function onConfirm(buttonIndex) {
    console.log('You selected button ' + buttonIndex);
    navigator.notification.alert('You selected button ' + buttonIndex);
}

navigator.notification.confirm(
    'You are the winner!', // message
     onConfirm,            // callback to invoke with index of button pressed
    'Game Over',           // title
    ['Restart','Exit']     // buttonLabels
);
...