现在,我正在 Meteor JS 框架中构建一个应用程序——该应用程序既可以从浏览器运行,也可以与 Cordova Phonegap 打包以供 iOS / Android 使用。
我希望能够检测我是否在科尔多瓦。我还是想区分手机浏览器和手机PhoneGap的使用。
在移动浏览器或 PhoneGap 应用程序之间进行检测对我来说没有意义,因为我仍在通过 HTTP 调用加载 Meteor 应用程序。
我还能如何检测用户是否从 PhoneGap 加载我们的应用程序?
现在,我正在 Meteor JS 框架中构建一个应用程序——该应用程序既可以从浏览器运行,也可以与 Cordova Phonegap 打包以供 iOS / Android 使用。
我希望能够检测我是否在科尔多瓦。我还是想区分手机浏览器和手机PhoneGap的使用。
在移动浏览器或 PhoneGap 应用程序之间进行检测对我来说没有意义,因为我仍在通过 HTTP 调用加载 Meteor 应用程序。
我还能如何检测用户是否从 PhoneGap 加载我们的应用程序?
今天要容易得多:
if (Meteor.isCordova) {
console.log("Printed only in mobile cordova apps");
}
好吧,您可以随时检查是否启动了 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 或其他任何反应变量可以运行的地方