1

初めてcordovaアプリをロードすると、130行目のブレークポイント(添付の画像を参照)がヒットします。これはdevicereadyデリゲート関数を呼び出し、すべてが正常です。

デバッガーのスクリーンショット

別のページに移動し、window.history.back()を実行すると(元のページに戻る)、devicereadyイベントが別の方法で発生します(135のブレークポイントを参照)。Cordovaを「使用不可」にするDeviceInfoはありません。cordova.jsからの次の抜粋に注意してください。

Cordova.available = DeviceInfo.uuid != undefined;

つまり、devicereadyイベントがCordova.execを呼び出すのを待っていても、常に失敗します。これがcordova.jsからの別の抜粋で、その理由を示しています。

Cordova.exec = function() { 
    if (!Cordova.available) {
        alert("ERROR: Attempting to call Cordova.exec()"
              +" before 'deviceready'. Ignoring.");
        return;
    }

だから私の質問は; なぜcordovaがデバイスレディを呼び出す2つの方法があり、ブラウザに戻ってページに到達したときに「dud」方法を使用するのはなぜですか?

4

1 に答える 1

0

これはバージョン 1.5 以前のようです。最近のバージョンでは、deviceReady の読み込みと起動が大幅に変更されました。

于 2012-06-06T20:46:17.803 に答える