Почему messages.navigator.alert работает в Google Chrome, а в Android Studio ничего не происходит? - PullRequest
0 голосов
/ 07 февраля 2019

Я слежу за документацией corodova для использования плагина диалоговых окон, и у меня он работает в Google Chrome, но когда я пробую его в эмуляторе Android Studio, он ничего не делает.Все, что у меня есть, это кнопка на моей странице индекса, которая имеет идентификатор кнопки.У меня есть прослушиватель событий, который затем вызывает уведомление уведомления.Мой код ниже.Я новичок в использовании Cordova и имею базовые знания JavaScript.Спасибо за любую помощь.

Я пытался переместить код в функциональную часть onDeviceReady:, но он все равно не будет работать.Я не удалил ни одного кода, который был добавлен при создании приложения, если это необходимо.

index.html

<html>
    <head>

        <meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *; img-src 'self' data: content:;">
        <meta name="format-detection" content="telephone=no">
        <meta name="msapplication-tap-highlight" content="no">
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
        <link rel="stylesheet" type="text/css" href="css/index.css">
        <script type="text/javascript" src="cordova.js"></script>
        <script type="text/javascript" src="js/index.js"></script>
        <title>Hello World</title>
    </head>
    <body>
       <input id="button" type="button" name="button" value="Click me">
    </body>
</html>

index.js

var app = {
    // Application Constructor
    initialize: function () {
        document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
    },

    // deviceready Event Handler
    //
    // Bind any cordova events here. Common events are:
    // 'pause', 'resume', etc.
    onDeviceReady: function () {
        this.receivedEvent('deviceready');
        document.getElementById("button").addEventListener("click", showAlert);
    },

    // Update DOM on a Received Event
    receivedEvent: function (id) {
        var parentElement = document.getElementById(id);
        var listeningElement = parentElement.querySelector('.listening');
        var receivedElement = parentElement.querySelector('.received');

        listeningElement.setAttribute('style', 'display:none;');
        receivedElement.setAttribute('style', 'display:block;');

        console.log('Received Event: ' + id);
    }
};

        window.onload = function () {
            document.getElementById("button").addEventListener("click", showAlert);
        }


function showAlert() {
    "use strict";
    navigator.notification.alert(
        //message
        "Hello World",
        dismissAlert,
        "Alert",
        "Done"
    );
}

function dismissAlert() {
    alert('You dismissed the alert');
}

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