Android開発では、実際に実際のデバイスを使用する必要があります。シミュレーターはiOSで正常に動作しますが、Androidエミュレーターは非常に遅く、実際のエンドユーザーエクスペリエンスとはあまり異なります。
ただし、デスクトップブラウザを使用することで、正しい方向に進んでいます。Webページの更新は、フルビルドを実行するよりもはるかに高速です。
jekyll --auto --serverを使用してアプリのHTMLを生成するため、デスクトッププレビューは常にhttp上にあり、phonegapの検出がかなり簡単になります。
以下は私のアプリのスタートアップコードです-完全に機能するコードはhttps://github.com/tqc/ChondricJS/blob/master/src/app.jsにあります
if (settings.mightBePhoneGap && document.location.protocol == "file:") {
// file protocol indicates phonegap
app.isPhonegap = true;
app.platform = "cordova";
document.addEventListener("deviceready", function() {
console.log("appframework deviceready");
console.log(device.platform);
app.isSimulator = device.platform.indexOf("Simulator") > 0;
$(initInternal);
}
, false);
} else {
// no phonegap - web preview mode
app.platform = "web"
$(initInternal);
}
アプリコードでapp.platformを確認して、デスクトップブラウザからプラグインを呼び出さないようにします。これらのプラグインは使用できません。