Phonegap (Cordova 2.9.0) iOS 上的地理定位
Posted
技术标签:
【中文标题】Phonegap (Cordova 2.9.0) iOS 上的地理定位【英文标题】:geolocation on Phonegap (Cordova 2.9.0) iOS 【发布时间】:2013-11-02 12:36:41 【问题描述】:我正在使用 Cordova 2.9.0 和 Xcode 5.0
我正在尝试做这个教程:http://docs.phonegap.com/en/2.4.0/cordova_geolocation_geolocation.md.html
我从 geolocation.getCurrentPosition 复制了代码,并在那里复制了“完整示例”(带有 html 和 javascript 代码)
我检查了我的 config.xml,它有
<feature name="Geolocation">
<param name="ios-package" value="CDVLocation"/>
</feature>
我在 iPhone 模拟器中得到的只是:“正在查找地理位置...” 但我等了大约 5 分钟,什么也没发生 - 没有得到任何地理位置数据。
希望有人能帮帮我
【问题讨论】:
【参考方案1】:您可以尝试一些方法,或者如果这些方法无法解决问题,请发布更多详细信息:
您的链接指向 2.4 版的 Cordova 文档,而您使用的是 2.9,因此尽管地理定位规范没有太大变化,但最好使用该版本的文档。
检查您是否包含了 cordova.js 文件。在文档中的示例中,js 文件名为“cordova-x.x.x.js”,您当然需要将其替换为项目/版本的正确文件名。
在 iPhone 模拟器上(实际上不是检查地理位置的最佳方法)检查您是否设置了模拟位置:转到“调试”>“位置”并选择预定义的位置或自定义位置。
李>添加console.log()
调用或alert()
以检查侦听器是否正在执行并检查插件是否存在,例如:
函数 onDeviceReady() alert("在设备就绪监听器上执行"); 警报(navigator.geolocation); navigator.geolocation.getCurrentPosition(onSuccess, onError);
【讨论】:
感谢您的快速回答。两个问题:我如何安装控制台和警报插件 - 我有一个cordova-2.5.0 www-文件夹中的.js文件,而不是cordova-2.9.0.js - 我检查了我下载phonegap-2.9.0的文件夹。文件夹 phonegap-2.9.0>lib>ios>CordovaLib 中只有一个 cordova.js。我应该用这个cordova.js替换cordova-2.5.0.js吗? 对于奇怪的格式感到抱歉 - 我不太清楚如何在评论中进行换行(我想用 或 2 个空格) 关于 Cordova 2.9 中的console
:***.com/questions/17735084/…。我很确定 alert() 可以在没有通知插件的情况下工作,但如果没有,你将需要那个。是的,您确实应该使用与您的 Cordova 版本匹配的 cordova.js 文件,每个版本和平台都不同。以上是关于Phonegap (Cordova 2.9.0) iOS 上的地理定位的主要内容,如果未能解决你的问题,请参考以下文章
如何在 IOS 7 的 cordova 2.9.0 中删除状态栏?
用于 ios 的 PhoneGap 插件返回 FAILED pluginJSON