行业知识
flutter 无法从H5 WebView 访问摄像头和录音权限
2026-11-03 12:59:43
来源:互联网转载
index.php/tags-41973.html" >AndroidManifest.xml需要在 中添加以下权限:
()import 'dart:async';import 'package:flutter/material.dart';import 'package:flutter_inappwebview/flutter_inappwebview.dart';import 'package:permission_handler/permission_handler.dart';Future main() async { WidgetsFlutterBinding.ensureInitialized(); await Permission.camera.request(); await Permission.microphone.request(); runApp(MyApp());}class MyApp extends StatefulWidget { @override _MyAppState createState() => new _MyAppState();}class _MyAppState extends State { @override Widget build(BuildContext context) { return MaterialApp( home: InAppWebViewPage() ); }}class InAppWebViewPage extends StatefulWidget { @override _InAppWebViewPageState createState() => new _InAppWebViewPageState();}class _InAppWebViewPageState extends State { InAppWebViewController _webViewController; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("InAppWebView") ), body: Container( child: Column(children: [ Expanded( child: Container( child: InAppWebView( initialUrlRequest: URLRequest(url: Uri.parse('url')), initialOptions: InAppWebViewGroupOptions( crossPlatform: InAppWebViewOptions( mediaPlaybackRequiresUserGesture: false, debuggingEnabled: true, ), ), onWebViewCreated: (InAppWebViewController controller) { _webViewController = controller; }, androidOnPermissionRequest: (InAppWebViewController controller, String origin, List resources) async { return PermissionRequestResponse(resources: resources, action: PermissionRequestResponseAction.GRANT);//主要是这行代码是授权的 } ), ), ), ])) ); }} ()
上一篇:怎么运行服务器的程序?
下一篇:敏慧英文怎么读?