1

嗨,我没有在我的 java 脚本函数中获取位置,在 android web 视图中打开相同的代码在 android 浏览器中打开它时获取位置

_webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
        _webview.getSettings().setAppCacheEnabled(true);
        _webview.getSettings().setDatabaseEnabled(true);
        _webview.getSettings().setDomStorageEnabled(true);
        //  _webview.getSettings().setGeolocationEnabled(true);
        _webview.setWebViewClient(new GeoWebViewClient());
        _webview.getSettings().setJavaScriptEnabled(true);
        _webview.getSettings().setGeolocationEnabled(true);
        // _webview.setWebChromeClient(new GeoWebChromeClient());

        Log.i("onPageStarted", "Processing webview url click..."+this.getApplicationContext().getDir("database",
                Context.MODE_PRIVATE).getPath());
        _webview.getSettings().setGeolocationDatabasePath( "/data/data/" +this.getClass().getPackage().getName() + "/app_database/");
        _webview.setWebChromeClient(new WebChromeClient() {
            public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
                callback.invoke(origin, true, false);
            }
        });
        _webview.loadUrl("file:///android_asset/www/hello.html");

这些是我在清单中给出的权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
4

0 回答 0