Javascript:使用{x}api获取当前GPS位置?
我在玩on{x}api,试图创建一个规则,在每次停车(从开车到走路/站着)时显示你在哪里的通知(可能链接到打开谷歌地图?)。我在{x}的演示视频中看到了它,但我没有找到规则,所以我想我应该自己做,只是为了好玩 不过,我在获取当前gps坐标时遇到了一些问题,我似乎不知道如何使用定位api 以下是到目前为止我得到的信息:Javascript:使用{x}api获取当前GPS位置?,javascript,android,api,location,Javascript,Android,Api,Location,我在玩on{x}api,试图创建一个规则,在每次停车(从开车到走路/站着)时显示你在哪里的通知(可能链接到打开谷歌地图?)。我在{x}的演示视频中看到了它,但我没有找到规则,所以我想我应该自己做,只是为了好玩 不过,我在获取当前gps坐标时遇到了一些问题,我似乎不知道如何使用定位api 以下是到目前为止我得到的信息: device.modeOfTransport.on('changed', function(signal) { if (signal.previous === 'drivi
device.modeOfTransport.on('changed', function(signal) {
if (signal.previous === 'driving' && (signal.current === 'walking' || signal.current === 'atrest')) {
}
});
如果有javascript大师可以看看api,那就太好了。以下是位置api:
看起来
传输模式
已更改
处理程序不会直接向您提供位置信息。(为什么?可能是因为modeOfTransport
只能通过加速计遥测来断言,所以GPS甚至不涉及。)您必须在处理程序中构建并启动locationListener
,并使用提供给该侦听器处理程序的位置信息
例如,您可以尝试以下方法(我或多或少地从文档的复制和粘贴中拼凑而成)
我想应该是这样做的,我只是不知道怎么把它拼凑起来。但我不确定它到底是如何工作的。5000次间隔,这无关紧要吗?因为侦听器在第一次运行时会被停止,对吗?还是要等5秒钟才能开始?如果是这样,将其设置为0会更聪明,对吗?谢谢大家!@qwerty该文档并不完全清楚位置处理程序何时被触发,但是是的-我希望它被调用一次,然后停止。此外,我假设所有这些都是在一个线程中运行的(因为它们似乎是为了迎合web开发人员),这也意味着即使多个事件排队来调用处理程序,它们也会被阻止,然后被忽略,因为您在第一次调用后停止了侦听器。我要开车去兜风!谢谢你的帮助!
device.modeOfTransport.on('changed', function(signal) {
if (signal.previous === 'driving' && (signal.current === 'walking' || signal.current === 'atrest')) {
var listener = device.location.createListener('GPS', 5000);
listener.on('changed', function (signal) {
console.info('Lat: ' + signal.location.latitude);
console.info('Lon: ' + signal.location.longitude);
listener.stop();
});
listener.start();
}
});