如何在人行横道科尔多瓦上进行地理定位

Posted

技术标签:

【中文标题】如何在人行横道科尔多瓦上进行地理定位【英文标题】:How to get geolocation working on crosswalk cordova 【发布时间】:2018-07-25 17:09:04 【问题描述】:

您好,我正在使用谷歌最近地点 api 创建一个应用程序,这将使我能够显示某个位置周围最近的地点。

在普通网络浏览器或 chrome 移动浏览器上测试时,应用程序可以正常工作,如下图所示

Please click to view

我遇到的问题是,当我通过 inapp 浏览器或适用于 cordova 的 crosswalk webview 插件运行此 Web 应用程序时,我无法获取我当前的位置(地理定位工作)

请问我怎样才能让我的网络应用程序通过人行横道或 inappbrowser 使用地理位置获取其当前位置

我认为这是地理定位权限的问题,但我不知道如何解决这个问题

【问题讨论】:

【参考方案1】:

如果这是由于地理定位权限丢失而导致的问题,您可以使用此插件检查是否有启用,要求用户启用它,检查您是否有使用地理定位的权限,如果没有,请向用户询问权限:

https://github.com/dpa99c/cordova-diagnostic-plugin

function isAuthorize() 
    cordova.plugins.diagnostic.isLocationAuthorized(function(authorized)
        if (authorized) 
            this.isEnabled();
        
        else 
            // Do something whenuser don't allowed the localisation
        
    , function(error)
        console.error("The following error occurred: "+error);
    );


function isEnabled() 
    cordova.plugins.diagnostic.isLocationEnabled(function(enabled)
        if (enabled) 
            // Geolocation is enabled and you have permission to used it
        
        else 
            // Geolocalisation is not enabled
            // Displays the device location settings to allow user to enable location services/change location mode.
            cordova.plugins.diagnostic.switchToLocationSettings();
        
    , function(error)
        console.error("The following error occurred: "+error);
    );

【讨论】:

好的,谢谢你,但是当我在我的移动浏览器上测试网络应用程序时,我也注意到了这个问题,但是当我使用另一个移动浏览器(如 chrome)时,位置被拾取,这个问题可能是我的移动 webview 什么的?

以上是关于如何在人行横道科尔多瓦上进行地理定位的主要内容,如果未能解决你的问题,请参考以下文章

如何在科尔多瓦上删除 ios 地理定位身份验证请求消息

科尔多瓦地理定位不准确

科尔多瓦后台地理定位支持,一段时间后没有应用程序终止

地理定位不适用于科尔多瓦

谷歌地图科尔多瓦地理定位API不起作用

科尔多瓦地理定位错误的坐标