我需要在Flutter中创建一个考试应用程序,我们需要在一定的时间间隔内拍摄用户的照片和视频,在这样做的同时,我们不想显示相机屏幕。
我尝试使用Flutter的相机插件,但我无法找到任何方法来捕获图像和视频而无需相机预览。
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:camera/camera.dart';
List<CameraDescription> cameras;
Future<void> main() async {
cameras = await availableCameras();
runApp(CameraApp());
}
class CameraApp extends StatefulWidget {
@override
_CameraAppState createState() => _CameraAppState();
}
class _CameraAppState extends State<CameraApp> {
CameraController controller;
@override
void initState() {
super.initState();
controller = CameraController(cameras[0], ResolutionPreset.medium);
controller.initialize().then((_) {
if (!mounted) {
return;
}
setState(() {});
});
}
@override
void dispose() {
controller?.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
if (!controller.value.isInitialized) {
return Container();
}
return AspectRatio(
aspectRatio:
controller.value.aspectRatio,
child: CameraPreview(controller));
}
}
我不想显示预览屏幕,并采取在一些间隔的图像或视频
1条答案
按热度按时间yhuiod9q1#
虽然在后台访问相机是可能的Android的早期迭代.由于Android P,访问像相机和麦克风传感器只能在应用程序处于前台时完成.更多细节可以阅读here .