请求相机权限 Flutter Web

2023-12-27

我需要在我的网络应用程序中使用相机。所以我想如果用户拒绝在他/她的浏览器上使用相机,我会再次请求它允许相机许可。

这是我的代码

import 'package:universal_html/html.dart' as html;


      RaisedButton(
            onPressed: () {
              var permissions = Map<String,String>();
              permissions['name']= 'camera';
              html.window.navigator.permissions.request(permissions).then((value){
                print((value).state);
              });
            },
            child: Text('Grant Permission'),
          )

但是当我单击“授予权限”按钮时,它会记录此错误

html_dart2js.dart:25368 Uncaught (in promise) TypeError: this.request is not a function
at Permissions.[dartx.request] (html_dart2js.dart:25368)
at web_camera_preview_screen.dart:157
at Generator.next (<anonymous>)
at runBody (async_patch.dart:86)
at Object._async [as async] (async_patch.dart:125)
at ink_well.InkWell.new.<anonymous> (web_camera_preview_screen.dart:154)
at _InkResponseState.new.[_handleTap] (ink_well.dart:779)
at ink_well.dart:862
at tap.TapGestureRecognizer.new.invokeCallback (recognizer.dart:182)
at tap.TapGestureRecognizer.new.handleTapUp (tap.dart:504)
at tap.TapGestureRecognizer.new.[_checkUp] (tap.dart:282)
at tap.TapGestureRecognizer.new.handlePrimaryPointer (tap.dart:217)
at tap.TapGestureRecognizer.new.handleEvent (recognizer.dart:475)
at pointer_router.PointerRouter.new.[_dispatch] (pointer_router.dart:76)
at pointer_router.dart:122
at LinkedMap.new.forEach (linked_hash_map.dart:23)
at pointer_router.PointerRouter.new.[_dispatchEventToRoutes] (pointer_router.dart:120)
at pointer_router.PointerRouter.new.route (pointer_router.dart:106)
at binding$5.WidgetsFlutterBinding.new.handleEvent (binding.dart:218)
at binding$5.WidgetsFlutterBinding.new.dispatchEvent (binding.dart:198)
at binding$5.WidgetsFlutterBinding.new.[_handlePointerEvent] (binding.dart:156)
at binding$5.WidgetsFlutterBinding.new.[_flushPointerEventQueue] (binding.dart:102)
at binding$5.WidgetsFlutterBinding.new.[_handlePointerDataPacket] (binding.dart:86)
at Object._invoke1 (window.dart:590)
at _engine.EngineWindow.new.invokeOnPointerDataPacket (window.dart:238)
at _engine.PointerBinding.__.[_onPointerData] (pointer_binding.dart:129)
at pointer_binding.dart:457
at pointer_binding.dart:418
at HTMLElement.<anonymous> (pointer_binding.dart:195)

根据信息来自MDN https://developer.mozilla.org/en-US/docs/Web/API/Permissions, permissions API仍处于实验阶段,其request方法标记为非标准,但我们可以使用query method:

RaisedButton(
  child: Text("Request permission"),
  onPressed: () async {
    final perm = await html.window.navigator.permissions.query({"name": "camera"});
    if (perm.state == "denied") {
      Scaffold.of(context).showSnackBar(SnackBar(
        content: Text("Oops! Camera access denied!"),
        backgroundColor: Colors.orangeAccent,
      ));
      return;
    }
    final stream = await html.window.navigator.getUserMedia(video: true);
    // ...
  },
),
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

请求相机权限 Flutter Web 的相关文章

  • Ajax JSON 数据和灯箱冲突

    我有一个带有灯箱插件的画廊设置光廊 http sachinchoolur github io lightGallery docs 该画廊与静态 HTML 完美配合 当我动态抓取 API 数据并尝试让灯箱处理这些项目时 问题就出现了 我似乎无
  • 使用php表单更改href链接

    我正在制作一个带有搜索栏的网站 我想让搜索栏在 搜索 并显示结果后具有交互性 所以我希望 href 根据正在使用的 Id 进行更改 例如 有人搜索 Pinecones 如果它在数据库中 它将有一个 ID 在本例中是 4 一旦他们搜索它 它就
  • MappedListIterable 不是子类型

    我是 flutter 和 dart 的新手 并尝试从 firestore 作为流获取数据并将其提供给我的 ListView 但我不断收到此错误 type MappedListIterable
  • 如何在表格的 tbody/thead 部分周围创建边框?

    我正在尝试创建一个包含表格数据的页面 该页面必须显示为多个表格 然而 我有两个相互冲突的要求需要解决 每个表格周围都必须有边框 每个表格的列宽必须能够根据内容重新调整大小 但是 所有表中的列宽必须一致 即列的大小基于所有表中该列中最大的单元
  • 如何使用CSS将背景图像放入选择选项标签中

    我有一个从 json 响应接收的国家 地区下拉列表 并且想要在国家 地区名称旁边添加相应的国家 地区国旗图标 也从 json 响应获取图像 我已经尝试了不同的 jQuery 和 bootstrap 插件 但他们所做的是破坏我以前的选择框样式
  • 如何在列表视图中滚动添加更多项目?

    这里的代码当前加载了存储在 Firestore 集合中的所有啤酒 我如何最初只加载 10 个啤酒 然后当用户向下滚动并到达 10 个啤酒列表的末尾时 它应该加载最后一次酿造后还有 10 杯 并且酿造应根据时间戳进行排序 class Brew
  • 使用本机 JavaScript 获取过渡中的 CSS 值

    这个问题之前被问过 但答案使用了 jQuery here https stackoverflow com q 8920934 3186555 因此 我将调整问题以专门询问native解决方案 to 最小化依赖关系 假设您有一个 div 然后
  • 删除

    好的 我有一个小菜单栏 菜单内的三个元素还有更多的子菜单 但是菜单栏中的元素之间有不必要的间距 而且我创建的子菜单有不必要的背景宽度 我在代码中将其涂成白色以使读者理解 由于这种不必要的宽度 即使鼠标悬停在不可见的宽度上 在本例中为白色 本
  • 为什么字体扩展仅适用于 PDF,而不适用于其他格式(HTML、XLS、DOC)?

    通过 Jaspersoft Studio 我们使用以下设置将用于 Web 应用程序的内置 Windows Calibri 字体变体导出到字体扩展 JAR 中 导出的jrfontextensions jar内的目录结构如下 jrfontext
  • 将 div 文本分配给变量然后显示它

    我有一个简单的任务 我试图完成学习 JavaScript 但一直无法找到明确的答案 这是代码 div Testing div 基本上我希望将方框 div 中的文本存储到变量中 然后 我想在页面的不同部分显示该变量的文本 使用上面的代码我得到
  • 为什么我的图像下方有空间? [复制]

    这个问题在这里已经有答案了 图像在下面获得了神秘的空白空间 即使padding 0 margin 0被应用 示范 http jsfiddle net cLETP 红色边框应该包围图像 但底部有空间 造成这种情况的原因是什么 如何删除该空间
  • 更改javascript nodejs中所有页面的href url

    我已经实现了具有多种语言下拉菜单的引导导航栏 当我选择语言时 它将翻译页面 如何更改其他页面的 url 和按钮文本 当我选择french 将所有网址更改为 fr about and fr contact 如何使用 JavaScript 进行
  • 如何设置视频文件的预览,从输入类型='文件'中选择

    在我的模块之一中 我需要从 input type file 浏览视频 之后我需要在开始上传之前显示选定的视频 我使用基本的 HTML 标签来显示 但它不起作用 这是代码 document on change file multi video
  • 使用 python 在一个 html 页面中显示分割数据框的 HTML 代码

    我是 html css 新手 所以对以 html 格式显示的数据有疑问 我有一个很长的列表 我想将其拆分并以 html 格式显示为两个单独的列 例如 而不是 Col1 Col2 1 a 2 a 3 a 4 a 5 b 6 b 7 b 8 b
  • 在 Angular html 模板中访问常量枚举

    假设我有一个常量枚举 export const enum MyConstEnum Value1 Value1 Value2 Value2 Value3 Value3 现在我想在我的 Angular 模板中使用它 span This has
  • 网站在 iPhone 屏幕右侧显示空白区域

    我遇到问题http eiglaw com http eiglaw com iPhone 屏幕右侧显示约 25 像素宽的空白 边框 我在 stackoverflow 上研究了这个问题 这些帖子是相关的 但是当我尝试提供的各种解决方案时 我无法
  • 如何使用javascript确保元素仅在圆上朝一个方向移动?

    好吧 我承认我对三角学真的很糟糕 出于上下文的考虑 我将添加我在这里提到的问题中的内容 参考问题 https stackoverflow com a 39429290 168492 https stackoverflow com a 394
  • 转义 h 轮廓

    因此 我一直在尝试找出在被较低级别的标题吸引后添加内容的最佳方法是什么 section h1 Title of Section h1 h2 Related 1 h2 h2 Related 2 h2 p I NEED THIS TO BE P
  • 哪些 Flutter 插件或功能可以利用外部 iOS/Android 显示器来显示与主显示器不同的内容

    我正在构建一个跨平台应用程序 需要在外部显示器上显示不同的视图 通常通过连接到 LCD 投影仪的 HDMI 适配器电缆连接 Flutter 是否能够在内置的外部显示器上显示不同的屏幕 在现有的 Flutter 插件中还是使用现有的 Flut
  • 禁用允许文本选择的

    残疾人可以吗

随机推荐

  • 如何使自动续订订阅与内部用户而不是 Apple ID 绑定?

    我似乎遇到了障碍 但本质上我在应用程序中拥有的是用户登录页面和创建帐户页面 当用户打开我的应用程序并创建新帐户时 他们的信息将存储在 Firebase 服务器 BaSS 上 现在我的问题是我将如何去做 以便对于通过我的应用程序创建帐户的每个
  • 在 Windows 中更改 org.eclipse.swt.widgets 背景颜色

    现在我正在尝试使用以下代码更改 org eclipse swt widgets Button 的背景颜色 Button sceneButton new Button border SWT TOGGLE SWT FLAT sceneButto
  • 识别矩阵中的值

    我有一个问题 然后我需要你的帮助来解决它 我有一个矩阵A A 0 0 1 2 3 4 0 1 2 3 4 0 0 0 0 0 0 1 2 3 4 0 1 2 3 4 0 0 然后我想知道矩阵 A 中每行的每个值 1 的个数与矩阵 A 中每行
  • ReferenceError:请求未定义

    我正在尝试复制一个脸书消息机器人 https developers facebook com docs messenger platform guides quick start但继续得到request is not defined 与 F
  • Prettier.js 方法关于换行格式的参数

    我正在运行 Prettier js VSCode 插件 prettier eslint cli 它将超过 80 个字符限制的方法参数格式化如下 将每个参数放在新行中 someMethod argumentOne argumentTwo ar
  • 值表/树

    我的问题 有没有办法创建价值树 类似于命令 TreeForm 的输出 但是节点中的值呢 我为什么要这个 我正在尝试编写一个完整的程序来分析我的实验课程的输出 每列数据作为一个符号分配 一般来说 每一列都是有意义的 它不仅仅是一堆不同的变量
  • 如何创建点分
    标签? [复制]

    这个问题在这里已经有答案了 如何使用 CSS 创建虚线或任何类型的 hr 线 双线 虚线等 hr 或者还有其他技巧吗 你可以有 hr style border top dotted 1px 那应该有效
  • 访问 json 树的叶子

    我有一个以下形式的 JSON 文件 id 442500000116137984 reply 0 children id 442502378957201408 reply 0 children id 442500001084612608 re
  • RestKit 映射 XML 元素主体

    如何为 XML 元素主体创建 RestKit 对象映射到对象属性 XML
  • 我可以在 GDB 的“内存访问”上设置断点吗?

    我正在通过 gdb 运行应用程序 并且我想在访问 更改特定变量的任何时间设置断点 有没有好的方法来做到这一点 我也对监视 C C 中的变量以查看它是否 何时发生变化的其他方法感兴趣 watch仅在写入时中断 rwatch让你继续阅读 并且a
  • App.config 替换单元测试

    我的持续集成服务器 TeamCity 配置为在构建时运行我们应用程序中的所有单元测试 在运行这些测试之前 我需要更改一些 appSettings 以使它们对我们的 CI 服务器有效 我通过使用 Visual Studio 提供的部署项目为我
  • Google Calendar Api 不要求 Oauth Screen

    我最近用过Google Calendar API 我已经创建了项目并生成了凭据 对于本地主机 我使用了以下凭据 installed client id xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx apps google
  • 如何将LogCat内容保存到文件?

    我添加了调试字符串 使用 Log d 并希望在 logCat 内容的上下文中查看它们 LogCat 的 保存 图标有一个 保存所选项目 提示 但必须有一种快速方法来保存整个内容 或选择整个内容 但我不知道该怎么做 要将 Log cat 内容
  • 如何在预测后保留 xts 时间序列数据中的日期

    请考虑这个小数据集 library xts library ggplot2 library forecast data lt data frame idDate c 12 12 2012 13 12 2012 14 12 2012 16 1
  • 如何使用 Google Sheets 脚本查找列中第一个匹配项的索引?

    我正在尝试使用 Google Sheets 脚本查找列中第一个匹配项的索引 function getRowIndex var lookupValue car var ss SpreadsheetApp getActiveSpreadshee
  • bean实例化失败;嵌套异常是 java.lang.NoClassDefFoundError: org/apache/log4j/Logger

    我试图让公共日志记录适用于 log4j 配置 但在启动服务器时不断出现异常 当尝试使用 StringUtils 时 我也遇到了类似的异常 该异常可通过另一个公共库获得 org springframework beans factory Be
  • 具有自定义接收器的 Spark 结构化流中的输入行数

    我在结构化流 spark 2 2 0 中使用自定义接收器 并注意到 Spark 为输入行数生成了错误的指标 它始终为零 我的流构建 StreamingQuery writeStream session readStream schema R
  • 如何根据嵌套键值删除JSONB列中的数组元素?

    如何根据对象键之一的值从数组中删除对象 该数组嵌套在父对象内 这是一个示例结构 foo1 bar1 123 bar2 456 bar1 789 bar2 42 foo2 some other stuff 我可以根据以下值删除数组元素吗bar
  • 在 Android/Jetpack Compose 中手动预填充导航后台

    是否可以在 Android Jetpack Compose 中预填充导航后台 我有一个深层链接 可以深入导航层次结构 但是 按后退时 它会导航到根路线 Example Route Main gt Route List gt Route De
  • 请求相机权限 Flutter Web

    我需要在我的网络应用程序中使用相机 所以我想如果用户拒绝在他 她的浏览器上使用相机 我会再次请求它允许相机许可 这是我的代码 import package universal html html dart as html RaisedBut