onDeviceReady永远不会在Cordova应用程序中被调用

时间:2015-06-20 03:39:34

标签: android cordova cordova-plugins

我只是想在inappbrowser插件中运行一个简单的页面。我正在运行Cordova 5.0,插件是1.0版。我使用splashscreen插件运行应用程序,它似乎工作fin。应用程序启动时会运行默认的启动画面,但应用程序中的浏览器插件似乎不起作用。以下是我的代码:

<!DOCTYPE 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 *">
        <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">
        <title>Hello World</title>

    <script type="text/javascript" src="../platforms/android/assets/www/cordova.js"></script>
    <script type="text/javascript" charset="utf-8">

// Wait for Cordova to load
//
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}

// Cordova is ready
//
function onDeviceReady() {
alert("dfs");

var ref = window.open('http://apache.org', '_blank', 'location=yes');
ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); });
ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); });
ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); });
ref.addEventListener('exit', function(event) { alert(event.type); });

}
</script>


</head> 


    <body onload="onLoad()">
    </body>
</html>

我认为cordova.js文件已正确链接,因为这是正确的路径。我还卸载并安装了插件,创建了一个新项目,似乎没有一个能解决我的问题。我正在我的Android 5.0智能手机和Android 4.1模拟器上测试它。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

请按以下步骤加入corodova.js

<script type="text/javascript" src="cordova.js"></script>

并使用ripple模拟器[这是一个谷歌插件],你会看到onDeviceReady()被触发。这对我来说很有用。请试一试