# flutter_camera **Repository Path**: hsxr/flutter_camera ## Basic Information - **Project Name**: flutter_camera - **Description**: 修改flutter原生插件camera - **Primary Language**: Dart - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-07-07 - **Last Updated**: 2024-05-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Camera Plugin [![pub package](https://img.shields.io/pub/v/camera.svg)](https://pub.dartlang.org/packages/camera) A Flutter plugin for iOS and Android allowing access to the device cameras. *Note*: This plugin is still under development, and some APIs might not be available yet. We are working on a refactor which can be followed here: [issue](https://github.com/flutter/flutter/issues/31225) ## Features: * Display live camera preview in a widget. * Snapshots can be captured and saved to a file. * Record video. * Add access to the image stream from Dart. ## Installation First, add `camera` as a [dependency in your pubspec.yaml file](https://flutter.io/using-packages/). ### iOS Add two rows to the `ios/Runner/Info.plist`: * one with the key `Privacy - Camera Usage Description` and a usage description. * and one with the key `Privacy - Microphone Usage Description` and a usage description. Or in text format add the key: ```xml NSCameraUsageDescription Can I use the camera please? NSMicrophoneUsageDescription Can I use the mic please? ``` ### Android Change the minimum Android sdk version to 21 (or higher) in your `android/app/build.gradle` file. ``` minSdkVersion 21 ``` ### Example Here is a small example flutter app displaying a full screen camera preview. ```dart import 'dart:async'; import 'package:flutter/material.dart'; import 'package:camera/camera.dart'; List cameras; Future main() async { cameras = await availableCameras(); runApp(CameraApp()); } class CameraApp extends StatefulWidget { @override _CameraAppState createState() => _CameraAppState(); } class _CameraAppState extends State { 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)); } } ``` For a more elaborate usage example see [here](https://github.com/flutter/plugins/tree/master/packages/camera/example). *Note*: This plugin is still under development, and some APIs might not be available yet. [Feedback welcome](https://github.com/flutter/flutter/issues) and [Pull Requests](https://github.com/flutter/plugins/pulls) are most welcome!