10

当尝试在 ios 的移动 chrome 上使用 HTML5 地理定位 api 时,我的应用程序抛出“权限被拒绝”错误,甚至没有提示共享我的位置。有没有其他人遇到过这个问题?

PS。这发生在本地和 heroku 实例上。

这是我在准备好的文档上运行的代码

    var displayCloseFoo = function(position) {
        var lat = position.coords.latitude;
        var lon = position.coords.longitude;

    };

    var displayError =  function(error) {
        var errors = {
            1: 'Permission denied',
            2: 'Position unavailable',
            3: 'Request timeout'
        };
        alert("Error: " + errors[error.code]);
    };

    var runGeo =  function(){
        if (navigator.geolocation) {
            var timeoutVal = 10 * 1000 * 1000;
            navigator.geolocation.getCurrentPosition(
                    displayCloseFoo,
                    displayError,
                    { enableHighAccuracy: true, timeout: timeoutVal, maximumAge: 0 }
            );
        }
        else {
            alert("Geolocation is not supported by this browser");
        }
    };
    runGeo();

谢谢

4

3 回答 3

5

您必须明确允许 Mobile Chrome 在 ios 中使用定位服务。在 ios6 中,您可以通过转到 Settings->Privacy->Location Services 并将 Chrome 切换为 On 来实现此目的。

于 2012-09-23T16:19:36.867 回答
0

地理位置在 Chrome 中无法在本地工作...不知道为什么它不能在您的 Heroku 实例中工作

看看这个小提琴......它似乎在这里工作正常...... http://jsfiddle.net/mattnull/YaCRe/

于 2012-08-15T03:25:28.143 回答
0

安装 chrome 后。当它打开时,如果你拒绝,它会要求你分享你的位置,你将无法获得位置

于 2013-05-02T10:33:41.573 回答