Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/113.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript iOS使用当前位置权限对话框在Phonegap应用程序中显示两次_Javascript_Ios_Cordova_Geolocation - Fatal编程技术网

Javascript iOS使用当前位置权限对话框在Phonegap应用程序中显示两次

Javascript iOS使用当前位置权限对话框在Phonegap应用程序中显示两次,javascript,ios,cordova,geolocation,Javascript,Ios,Cordova,Geolocation,我有一个Phonegap应用程序。我正在HTML中包含cordova.js(但不在www目录中),我正在等待devicerady被触发,然后我正在打电话 navigator.geolocation.getCurrentPosition(successCallback,failCallback); 我收到两个版本的对话框(按此顺序): 本机对话框- HTML对话框-如果您使用的是PhoneGap的3+版本,请确保正确包含插件 从: 从3.0版开始,Cordova将设备级API作为插件实现。使用命

我有一个
Phonegap
应用程序。我正在HTML中包含
cordova.js
(但不在
www
目录中),我正在等待
devicerady
被触发,然后我正在打电话

navigator.geolocation.getCurrentPosition(successCallback,failCallback);
我收到两个版本的对话框(按此顺序):

本机对话框-

HTML对话框-

如果您使用的是PhoneGap的3+版本,请确保正确包含插件

从:

从3.0版开始,Cordova将设备级API作为插件实现。使用命令行界面中描述的CLI的plugin命令为项目添加或删除此功能


我也有同样的问题,那是因为没有成功安装phonegap地理定位插件。你知道怎么安装吗?请检查如何在

上运行“cordova prepare”以更改config.xml,它将自动生成用于地理位置插件的cordova_plugins.js

只需小心,因为当您运行cordova prepare时,它将删除您的所有/www文件夹


通常,在将代码添加到/www文件夹之前,您必须添加所有插件并设置环境

不要在deviceready启动后立即调用getCurrentPosition。地理位置插件还没有准备好,所以navigator.geolocation.getCurrentPosition实际上调用HTML5API,然后您会看到HTML对话框。在我的爱奥尼亚项目中调用navigator.geolocation.getCurrentPosition之前,我会执行以下操作以确保地理位置插件已准备就绪

    var my_getposition = function() {
        if (ionic.Platform.isIOS() && !window.Coordinates) {
            $timeout(function(){ my_getposition(); }, 500);
            return;
        }
        navigator.geolocation.getCurrentPosition(...);
    }

啊!!这太完美了。我不敢相信我错过了这个。@brandonjp如果你错过了插件的安装,那么这两条消息怎么会出现在你的面前?我已经按照文档中的描述安装了这个插件,我仍然有上面提到的两条消息。有什么想法吗?您好,如何使用Cordova在iPhone上禁用位置权限警报。