1

現在、Meteor JS フレームワークでアプリを作成しています。このアプリは、ブラウザーから実行できるだけでなく、iOS / Android 用に Cordova Phonegap でパッケージ化することもできます。

Cordova にいるかどうかを検出できるようにしたいと考えています。モバイル ブラウザーとモバイル PhoneGap の使用状況を区別したい。

HTTP 呼び出しを介して Meteor アプリをまだロードしているため、モバイル ブラウザーまたは PhoneGap アプリケーション間の検出は意味がありません。

ユーザーが PhoneGap からアプリを読み込んでいるかどうかを他にどのように検出できますか?

4

2 に答える 2

1

deviceready ハンドラが開始されたかどうかをいつでもチェックでき、セッション ハッシュを使用してこれを保存できます。

document.addEventListener("deviceready", function() {
    Session.set("isphonegap",true);
}, false);

これを反応的に使用できます。

Deps.autorun() {
    if(Session.equals("isphonegap", true)) {
         //Yes its phonegap!
    }
}

唯一のことは、常に phonegap ではないことを想定する必要があることです。deviceready(phonegap/cordova 内のデバイスで) 起動した場合Session.get("isphonegap")、デバイスがテンプレート ヘルパーで phonegap を使用しているかどうか、またはリアクティブ変数を実行できる他の場所で確認できます。

于 2013-04-24T18:52:48.593 に答える