katchecode_camera 0.2.7

Flutter Android iOS

A Flutter plugin for getting information about and controlling the camera on Android and iOS. Supports previewing the camera feed and capturing images.

Camera Plugin #

pub package

A Flutter plugin for iOS and Android allowing access to the device cameras.

Features: #

  • Display live camera preview in a widget.
  • Snapshots can be captured and saved to a file.

Installation #

First, add camera as a dependency in your pubspec.yaml file.

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:

<key>NSCameraUsageDescription</key>
<string>Can I use the camera please?</string>
<key>NSMicrophoneUsageDescription</key>
<string>Can I use the mic please?</string>

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.

import 'dart:async';
import 'package:flutter/material.dart';
import 'package:camera/camera.dart';

List<CameraDescription> cameras;

Future<Null> main() async {
  cameras = await availableCameras();
  runApp(new CameraApp());
}

class CameraApp extends StatefulWidget {
  @override
  _CameraAppState createState() => new _CameraAppState();
}

class _CameraAppState extends State<CameraApp> {
  CameraController controller;

  @override
  void initState() {
    super.initState();
    controller = new 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 new Container();
    }
    return new AspectRatio(
        aspectRatio:
        controller.value.aspectRatio,
        child: new CameraPreview(controller));
  }
}

For a more elaborate usage example see here.

Note: This plugin is still under development, and some APIs might not be available yet. Feedback welcome and Pull Requests are most welcome!

0
likes
100
pub points
13%
popularity

A Flutter plugin for getting information about and controlling the camera on Android and iOS. Supports previewing the camera feed and capturing images.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

Uploader

ls@katchecode.com

License

BSD (LICENSE)

Dependencies

flutter

More

Packages that depend on katchecode_camera