Phonegap 检测设备 GPS 状态
Posted
技术标签:
【中文标题】Phonegap 检测设备 GPS 状态【英文标题】:Phonegap Detect Device GPS Status 【发布时间】:2014-01-02 15:03:38 【问题描述】:经过几个小时的搜索,我终于决定在这里发布一个问题。
我正在使用 cordova/phonegap 版本 3 库并尝试构建基于地理位置的应用程序。 我需要做的是检查用户是否启用了 GPS,然后才能执行其他操作,但据我所知,这似乎是不可能的。
我使用的代码是:
function onDeviceReady()
// Throw an error if no update is received every 30 seconds
var options = maximumAge: 0, timeout: 10000, enableHighAccuracy: true;
watchID = navigator.geolocation.watchPosition(onSuccess, onGeoError, options);
function onSuccess(position)
//DO WHATEVER
function onGeoError(error)
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
我希望通过 error.POSITION_UNAVAILABLE 消息引发错误,但无论我做什么,每次都会引发 TIMEOUT 错误 (error.TIMEOUT)。我什至将设备置于飞行模式,关闭所有设备(gps 等),但仍然出现 TIMEOUT 错误。
任何人都可以提出一个更好的方法来实现这一点。
【问题讨论】:
你检查权限了吗:docs.phonegap.com/en/3.0.0/… 是的,所有权限都已添加 你找出问题所在了吗?我也有同样的问题 是的,我的应用程序的问题是我在安装插件后没有运行构建命令(cordova prepare)。在运行“cordova build”命令之前备份您的 www 文件夹,因为这会将 www 文件夹替换为默认内容。 Sahil,最好添加自己的答案并接受它作为答案。 【参考方案1】:我的应用程序的问题是我在安装插件后没有运行构建命令(cordova prepare)。在运行“cordova build”命令之前备份您的 www 文件夹,因为这会将 www 文件夹替换为默认内容
【讨论】:
以上是关于Phonegap 检测设备 GPS 状态的主要内容,如果未能解决你的问题,请参考以下文章
如何查看 Windows Phone 8 模拟器或运行 Phonegap 应用程序的设备的 javascript 控制台输出