Android Webview:navigator.geolocation API 不工作,抛出异常 POSITION_UNAVAILABLE。
创始人
2024-08-19 11:00:40
0次

问题描述:

在Android WebView中使用navigator.geolocation API时,会抛出异常POSITION_UNAVAILABLE,导致无法获取地理位置信息。

解决方法:

  1. 确保应用已经获取了定位权限。在AndroidManifest.xml文件中添加以下权限:

  1. 在WebView加载网页之前,启用JavaScript和地理位置功能:
WebView webView = findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setGeolocationEnabled(true);
  1. 创建一个WebChromeClient并覆盖onGeolocationPermissionsShowPrompt方法,以允许网页获取地理位置权限:
webView.setWebChromeClient(new WebChromeClient() {
    @Override
    public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
        callback.invoke(origin, true, false);
    }
});
  1. 如果需要在网页中获取地理位置信息,需要在网页中添加以下JavaScript代码:
navigator.geolocation.getCurrentPosition(successCallback, errorCallback);
  1. 在网页中定义successCallback和errorCallback函数,用于处理成功获取地理位置和获取失败的情况。
function successCallback(position) {
    var latitude = position.coords.latitude;
    var longitude = position.coords.longitude;
    // 处理获取到的位置信息
}

function errorCallback(error) {
    console.error(error);
}

以上步骤应该可以解决在Android WebView中使用navigator.geolocation API时抛出异常POSITION_UNAVAILABLE的问题。

相关内容

热门资讯

热点推荐!经典捕鱼透视功能神器... 热点推荐!经典捕鱼透视功能神器,经典捕鱼真是真的有透视神器(有辅助挂详细)暗藏猫腻,小编详细说明经典...
终于清楚!雅苑蕲春麻将开挂功能... 终于清楚!雅苑蕲春麻将开挂功能教程,雅苑蕲春麻将本来真的是有开挂教程(有辅助挂细节)1、玩家可以在雅...
2024教程!鑫豪天地辅助功能... 2024教程!鑫豪天地辅助功能软件,鑫豪天地一贯真的是有辅助软件(有辅助挂技巧)1、点击下载安装,鑫...
信息共享!七月游戏透视功能ap... 信息共享!七月游戏透视功能app,七月游戏确实是有透视app(有辅助挂猫腻)1、超多福利:超高返利,...
大家学习交流!老夫子辅助功能软... 大家学习交流!老夫子辅助功能软件,老夫子一直有辅助软件(竟然有辅助挂)1)老夫子有没有挂:进一步探索...
终于懂了!红豆娱乐辅助器功能插... 终于懂了!红豆娱乐辅助器功能插件,红豆娱乐竟然有辅助器插件(有辅助挂方略)红豆娱乐破解侠是真的助透视...
每日必备!老友二打一透视挂功能... 每日必备!老友二打一透视挂功能教程,老友二打一一直存在有透视挂教程(有辅助挂细节)1、操作简单,无需...
盘点十款!熊猫互娱开挂功能脚本... 盘点十款!熊猫互娱开挂功能脚本,熊猫互娱本来是有开挂脚本(有辅助挂透视)在进入熊猫互娱软件靠谱后,参...
推荐一款!贪玩互娱透视功能教程... 推荐一款!贪玩互娱透视功能教程,贪玩互娱一贯真的有透视教程(有辅助挂辅助)1、进入到贪玩互娱是否有挂...
记者揭秘!至尊娱乐城透视功能攻... 记者揭秘!至尊娱乐城透视功能攻略,至尊娱乐城真是存在有透视攻略(有辅助挂解惑)1、金币登录送、破产送...