phonegap 中的 GPS 状态
Posted
技术标签:
【中文标题】phonegap 中的 GPS 状态【英文标题】:GPS status in phonegap 【发布时间】:2014-07-09 09:35:16 【问题描述】:我是 Phonegap 的新手。我想通过网络或 GPS 显示用户位置。我想知道 GPS 状态,比如 GPS 现在是关闭还是启用或禁用?如果 GPS 关闭,应用程序会转到 GPS 设置,如果 GPS 被禁用,则 GPS 会打开。我不知道,我可以用 phonegap 找到这个还是应该为此编写一个插件?我的意思是,我应该为 android 编写一个插件,为 ios 编写另一个插件?
感谢您的帮助:)
【问题讨论】:
this post的可能重复 【参考方案1】:有一个Android插件here和另一个here
在 iOS 上,如果这是它无法定位的原因,错误回调将告诉您位置服务已禁用。
【讨论】:
【参考方案2】:我认为这可能会有所帮助,刚刚在 phonegap 网站上找到了它:
http://docs.phonegap.com/fr/1.3.0/phonegap_geolocation_geolocation.md.html
【讨论】:
感谢您的回复。我读过这个,但在这个文档中说如何获取我的位置而不是如何检查 GPS 状态。 我认为您可以使用一种解决方法:尝试使用 GPS 设备(例如 getCurrentPosition),如果出现错误,则在 geolocationError 方法中您可以知道 GPS 状态。我不知道这行得通,但试试吧。 我认为没有办法直接使用Phonegap当前版本获取gps状态。唯一的方法(我认为)是从 geolocationError 中获取任何错误,然后您将获得 GPS 设备的状态。 LeGeekDOzoirLaFerriere,我同意你的看法。我认为 phonegap 无法知道 GPS 是否打开,也无法知道 GPS 状态!为此应该编写一个插件或分析获取地理位置的错误。 有几个插件可用,看我的回答【参考方案3】:要知道网络连接状态....
<html>
<head>
<title>navigator.network.connection.type Example</title>
<script type="text/javascript" charset="utf-8" src="phonegap-1.0.0.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for PhoneGap to load
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady()
checkConnection();
function checkConnection()
var networkState = navigator.network.connection.type;
var states = ;
states[Connection.UNKNOWN] = 'Unknown connection';
states[Connection.ETHERNET] = 'Ethernet connection';
states[Connection.WIFI] = 'WiFi connection';
states[Connection.CELL_2G] = 'Cell 2G connection';
states[Connection.CELL_3G] = 'Cell 3G connection';
states[Connection.CELL_4G] = 'Cell 4G connection';
states[Connection.NONE] = 'No network connection';
alert('Connection type: ' + states[networkState]);
</script>
</head>
<body>
<p>A dialog box will report the network state.</p>
</body>
</html>
如果没有连接 然后尝试显示警报
if (networkState == Connection.NONE)
alert('no internet ');
;
Tutorial
【讨论】:
感谢您的快速回复。我想知道 GPS 状态而不是网络状态。我可以知道 GPS 状态吗?以上是关于phonegap 中的 GPS 状态的主要内容,如果未能解决你的问题,请参考以下文章