Phonegap 地理定位插件未为 android 添加
Posted
技术标签:
【中文标题】Phonegap 地理定位插件未为 android 添加【英文标题】:Phonegap geolocation plugin is not adding for android 【发布时间】:2014-05-19 11:15:09 【问题描述】:Geolocation
我正在尝试获取地理位置详细信息,我已经使用 cordova 命令行添加了地理位置插件
$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-geolocation.git
$ cordova plugin rm org.apache.cordova.core.geolocation
使用cordova命令行创建的应用程序
The Command-Line Interface
通过命令行添加插件后android插件丢失
在以下屏幕截图中缺少 android
有人可以帮帮我吗?
【问题讨论】:
您是否将 Android 添加为插件? 您是否尝试在页面上实际使用该插件并查看是否有错误?本机代码已被删除,因此您不会看到“Android”文件夹,但您仍需要添加插件,以便它将正确的权限添加到 AndroidManifest.xml 【参考方案1】:Android 地理定位的原生代码已被删除,请参阅deprecation bug. 这是因为原生实现存在错误,而原生浏览器地理定位工作正常。由于 Cordova (Phonegap) 的目标是不存在,因此删除它只是时间问题。您可以像往常一样使用 Geolocation,它只是不会使用本机代码,而是依赖于浏览器版本。
如果您查看插件 xml 文件,您会发现其中仍有一些关于 Android 的行。这样cordova plugin add org.apache.cordova.geolocation
将正确复制在 Android 上运行所需的权限。
【讨论】:
顺便说一句,那里有一些仅限 javascript 的插件,如果你添加了这些插件,你会期待同样的事情 - /myApp/plugins/foo/ 中的“缺失”文件夹 -因为没有本机代码。如果您查看 /myApp/plugins/foo/www/,您将看到相关的 JavaScript。【参考方案2】:查看此链接:Go to Add Plugin Features
添加插件功能
您可以使用 CLI 从该注册表中搜索插件。
例如,搜索 geolocation 会产生一个匹配不区分大小写的术语的结果: 只需在命令提示符中搜索插件即可。
cordova plugin search geolocation
通过触发上述命令,您将获得搜索结果:
org.apache.cordova.geolocation - Cordova Geolocation Plugin
现在要安装这个插件,你需要启动:
cordova plugin add org.apache.cordova.geolocation
你会得到如下结果:
Fetching plugin "org.apache.cordova.geolocation" via plugin registry
Installing "org.apache.cordova.geolocation" for android
最后,地理定位插件将安装在您的 application_name/plugins 目录中。
路径将如下所示:D:\PhoneGap\hello\plugins\org.apache.cordova.geolocation
【讨论】:
【参考方案3】:这里是让你开心的步骤。我花了一整天的时间来解决这个问题。 最好降级地理定位插件的版本。执行以下步骤:
a) 移除已下载的地理定位插件: phonegap 插件 rm org.apache.cordova.geolocation
b)添加降级的地理位置插件: phonegap 插件添加 org.apache.cordova.geolocation@0.3.2
现在您将在 plugins 文件夹下看到 android 文件夹。 加油!!
【讨论】:
以上是关于Phonegap 地理定位插件未为 android 添加的主要内容,如果未能解决你的问题,请参考以下文章
phonegap 相机和地理定位在 android 中不能一起工作
Phonegap 2.5.0 地理定位不适用于 android 4.0.4
在 Android 上使用 PhoneGap 进行地理定位仅适用于 index.html