javascript - 在 Flutter 中映射为 webview
问题描述
由于 Flutter 中的地图插件非常有限,我使用Angular Google Map构建了一个 Angular 应用程序,并且我试图通过这个web 视图插件在我的 Flutter 应用程序中显示它。
这就是我得到的:
基本上似乎一切正常,但它没有要求我提供权限,因此地图不会呈现。(它在我的浏览器中工作正常)
这是我的代码:
import 'package:flutter/material.dart';
import 'package:flutter_webview_plugin/flutter_webview_plugin.dart';
class WebMap extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new WebviewScaffold(
url: "mysite.com",
appBar: new AppBar(
title: new Text("Cerca sulla mappa"),
),
);
}
}
解决方案
我尝试使用webview_flutter,但遇到了 Android 的地理定位权限问题。这是GitHub 上关于该问题的公开票。
我所做的解决方法是使用flutter_inappwebview插件并添加地理定位权限提示。
InAppWebView(
initialUrlRequest:
URLRequest(url: Uri.parse('https://maps.google.com')),
androidOnGeolocationPermissionsShowPrompt:
(InAppWebViewController controller, String origin) async {
return GeolocationPermissionShowPromptResponse(
origin: origin,
allow: true,
retain: true
);
},
)
推荐阅读
- db2 - 使用 CLI 和 SSL 连接到 IBM DB2
- powershell - Powershell move-item 不会从源中删除一些 3D png 文件
- azure - 错误:无法访问密钥保管库引用元数据
- react-native - 设置值后更改 React Native 状态
- javascript - 当事件的渲染选项等于背景时,完整日历工具提示无法正常工作
- cpu-architecture - 如何为向量乘法编写 MIPS 代码
- r - 在 R 的 for 循环中创建多个更改名称的函数
- android - 当我在 gradle 中使用库时,我不断得到 Unable to resolve dependency for ':app@debugAndroidTest/compileClasspath'
- android - 无法在 ViewPager2 中使用 androidx.fragment.app.FragmentManager
- mysql - 如何在 mysqlsh importTable util 中跳过/虚拟列?