如何使用 flutter_webview 插件在 Flutter 中启用位置?

Too*_*ess 2 android geolocation webview dart flutter

我目前正在一个项目中使用 flutter_webview 插件。在其中一个页面中,我需要获取用户位置信息来计算距离。网页上运行 JavaScript 来获取位置。

这是我的示例代码。

WebView(
  key: _key,
  initialUrl: "https://www.w3schools.com/html/html5_geolocation.asp",
  javascriptMode: JavascriptMode.unrestricted,
  onPageFinished: (_) {
    setState(() {
      _isLoading = false;
    });
  },
),
Run Code Online (Sandbox Code Playgroud)

如果我在 Chrome 上打开同一页面,它会请求位置权限。我想实现类似的东西。

我尝试使用 AndroidManifest 文件的权限,但无法使其工作。

小智 5

你必须使用flutter_webview_plugin,有一个地理位置属性你可以启用它。
检查这个代码

 Widget build(BuildContext context) { 
return WebviewScaffold( 
  url: url, 
  withZoom: true, 
  hidden: true, 
  geolocationEnabled: true,
);
} 
Run Code Online (Sandbox Code Playgroud)