我正在开发一个主要用于自我教育目的的小应用程序,我决定用HTML / JS编写应用程序,并使用phonegap将其转换为“原生”应用程序。
这一切都很好,我已经在手机上成功安装了HelloWorld应用程序。
除了作为原生应用程序,我还想使用浏览器在互联网上提供我的项目。这样我的用户就可以在浏览器中访问网址,也可以下载并安装应用。
因此我的问题是:
是否可以在标准网站上在线使用Phonegap及其API?这意味着我可以使用phonegaps功能来访问地理位置。
否则我将不得不更改我的javascript代码,而不是在网站上使用phonegap。
答案 0 :(得分:1)
对不起,我不相信这会起作用。您可以尝试的方法是将您对phonegap进行的任何呼叫包裹起来,检查您是在手机上还是在浏览器中并根据它进行切换。这将迫使您将您的代码与phonegap&创造良好的界限。
我使用了这个,这并不完美(特别是如果用户在他们的移动浏览器中访问您的网站),但这是一个开始:
//jquery - for working in browser
$(document).ready(function() {
if (!navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry)/)) {
console.log("we are in a browser");
}
});
//phonegap - for working in app
function onDeviceReady() {
console.log("we are an app");
}
function onBodyLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
答案 1 :(得分:1)
PhoneGap / Cordova API与设备上提供的功能相关联,因此无法通过“普通”网站获取。
但是,根据您使用的示例,Geolocation是 NOT PhoneGap / Cordova特定的,它是W3C规范,可在大多数现代浏览器上使用,因此您可以使用它。