Flutter Web 应用中被 Chrome 阻止后,有没有办法再次请求权限?

问题描述 投票:0回答:1

如果用户第一次阻止权限,我想再次授予权限。

例如,如果用户屏蔽了 Flutter Web 应用的位置权限,则该 Web 应用将无法访问用户的位置信息。同样,如果用户阻止 Web 应用程序的麦克风权限,则该 Web 应用程序将无法访问用户的麦克风。

flutter web permissions progressive-web-apps permission-denied
1个回答
0
投票

在 Flutter 中,与移动平台相比,在 Web 上处理权限和打开应用程序设置的方式有所不同。在 Web 平台上,您通常无法以编程方式打开用户启用权限的浏览器站点设置。相反,您需要引导用户完成整个过程。

您可以使用 kIsWeb 来检查您是否在网络中。如果是这样,那么您可以显示一条警报,告诉用户在浏览器设置中配置权限。如果您使用的是移动设备,则可以显示一个警报,其中包含一个通往 AppSettings 的按钮。

另外不要忘记,要在异步命令(通常是权限请求)之后打开警报,您应该使用在调用异步函数之前保存的上下文,因为上下文可能会变得无效。

© www.soinside.com 2019 - 2024. All rights reserved.