簡體   English   中英

設備已經沒有在科爾多瓦開火

[英]deviceready not firing in cordova

對於我的cordova項目,deviceready沒有正確啟動(至少在iOS中)。 我已經搜索了幾個小時但仍無法解決這個問題。 我做錯了什么嗎? js / cordova.js的路徑也存在:

<html>
<head>
    <title>Geolocation</title>
    <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, target-densityDpi=device-dpi, user-scalable=no" />
    <meta charset="utf-8">
    <link rel="stylesheet" type="text/css" href="css/app.css">
    <script type="text/javascript">

    // Fastclick
    if ('addEventListener' in document) {
        document.addEventListener('DOMContentLoaded', function() {
        FastClick.attach(document.body);
        }, false);
    }

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

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

    // device APIs are available
    //
    function onDeviceReady() {
        alert("ready");
        // Now safe to use device APIs
    }

    </script>
</head>
<body onload="onLoad()">

我不確定我錯過了什么,因為如果我在Chrome中檢查,我沒有收到任何錯誤

沒有必要在你的www/js/文件夾中包含cordova.js因為該文件從index.html文件的同一級別從另一個位置復制到platforms/ios/platform_www (即運行: cordova build ios ),所以為了有一個合適的配置,下一個聲明:

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

必須改為:

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

deviceready 事件對任何應用程序都至關重要。 它表示Cordova的設備API已加載並可以訪問。

更新

所以我通過從正文中刪除onload =“onLoad()”並將其替換為“deviceready”來工作:

function onLoad() {
    document.addEventListener("deviceready", onDeviceReady, false);
}

就這樣:

document.addEventListener("deviceready", onDeviceReady, false);

我有同樣的問題,但在我的情況下, cordova.js已被正確包括在內。

最終對我有用的是一個簡單的removeadd ios平台:

cordova platform remove ios
cordova platform add ios

自從我完全重建了ios平台並且在那段時間內發生了其他重大變化(Cordova升級,XCode升級等)以來已經有一段時間了。 我的config.xml或現有的ios版本可能在某種程度上不符合最新的Cordova要求。

我有同樣的問題,我的解決方案是添加:

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

在HTML文件中,一切都很完美

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM