0


flutter 无法从H5 WebView 访问摄像头和录音权限

AndroidManifest.xml需要在 中添加以下权限:

  1. <uses-permission android:name="android.permission.INTERNET"/><uses-permission android:name="android.permission.CAMERA"/><uses-permission android:name="android.permission.RECORD_AUDIO"/><uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/><uses-permission android:name="android.permission.VIDEO_CAPTURE"/><uses-permission android:name="android.permission.AUDIO_CAPTURE"/>
  1. import 'dart:async';
  2. import 'package:flutter/material.dart';
  3. import 'package:flutter_inappwebview/flutter_inappwebview.dart';
  4. import 'package:permission_handler/permission_handler.dart';
  5. Future main() async {
  6. WidgetsFlutterBinding.ensureInitialized();
  7. await Permission.camera.request();
  8. await Permission.microphone.request();runApp(MyApp());}
  9. class MyApp extends StatefulWidget {
  10. @override
  11. _MyAppState createState()=> new _MyAppState();}
  12. class _MyAppState extends State<MyApp>{
  13. @override
  14. Widget build(BuildContext context){returnMaterialApp(
  15. home:InAppWebViewPage());}}
  16. class InAppWebViewPage extends StatefulWidget {
  17. @override
  18. _InAppWebViewPageState createState()=> new _InAppWebViewPageState();}
  19. class _InAppWebViewPageState extends State<InAppWebViewPage>{
  20. InAppWebViewController _webViewController;
  21. @override
  22. Widget build(BuildContext context){returnScaffold(
  23. appBar:AppBar(
  24. title:Text("InAppWebView")),
  25. body:Container(
  26. child:Column(children:<Widget>[Expanded(
  27. child:Container(
  28. child:InAppWebView(
  29. initialUrlRequest:URLRequest(url: Uri.parse('url')),
  30. initialOptions:InAppWebViewGroupOptions(
  31. crossPlatform:InAppWebViewOptions(
  32. mediaPlaybackRequiresUserGesture: false,
  33. debuggingEnabled: true,),),
  34. onWebViewCreated:(InAppWebViewController controller){
  35. _webViewController = controller;},
  36. androidOnPermissionRequest:(InAppWebViewController controller, String origin, List<String> resources) async {returnPermissionRequestResponse(resources: resources, action: PermissionRequestResponseAction.GRANT);//主要是这行代码是授权的}),),),])));}}
标签: flutter

本文转载自: https://blog.csdn.net/weixin_44911775/article/details/134605161
版权归原作者 氤氲息 所有, 如有侵权,请联系我们删除。

“flutter 无法从H5 WebView 访问摄像头和录音权限”的评论:

还没有评论