/camerakit-android

One of the hardest Android APIs made into a high level and easy to use library that solves all of your problems.

Primary LanguageCMIT LicenseMIT

CameraKit Header

CameraKit Header CameraKit Header

Build Status CircleCI Code Climate Code Climate Code Climate

CameraKit takes one of the hardest Android APIs and makes it into a high level and easy to use library that solves all of your problems.

With CameraKit you are able to seamlessly do the following...

  • Image and video capture seamlessly working with the same preview session.
  • Automatic system permission handling.
  • Automatic preview scaling.
    • Create a CameraView of any size (not just presets!).
    • Automatic output cropping to match your CameraView bounds.
  • Multiple capture methods.
    • METHOD_STANDARD: an image captured normally using the camera APIs.
    • METHOD_STILL: a freeze frame of the CameraView preview (similar to SnapChat and Instagram) for devices with slower cameras.
    • METHOD_SPEED: automatic capture method determination based on measured speed.
  • Built-in continuous focus.
  • Built-in tap to focus.
  • Built-in pinch to zoom.

Setup

Add CameraKit to the dependencies block in your app level build.gradle:

compile 'com.wonderkiln:camerakit:0.13.1'

Usage

To use CameraKit, simply add a CameraView to your layout:

<com.wonderkiln.camerakit.CameraView
    android:id="@+id/camera"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:adjustViewBounds="true" />

Make sure you override onResume and onPause in your activity, and make calls respectively to CameraView.start() and CameraView.stop().

@Override
protected void onResume() {
    super.onResume();
    cameraView.start();
}

@Override
protected void onPause() {
    cameraView.stop();
    super.onPause();
}

ProGuard

Starting in version 0.13.0 you need to add the following options to your Proguard rules:

-dontwarn com.google.android.gms.**

Documentation

Check out our Documentation Website for more documentation on how to use to CameraKit.

Sponsoring

Most of the core team members, CameraKit contributors and contributors in the ecosystem do this open source work in their free time. If you use CameraKit for a serious task, and you'd like us to invest more time on it, please donate. This project increases your income/productivity too. It makes development and applications faster and it reduces the required bandwidth.

This is how we use the donations:

  • Allow the core team to work on CameraKit
  • Thank contributors if they invested a large amount of time in contributing
  • Support projects in the ecosystem that are of great value for users
  • Infrastructure cost
  • Fees for money handling

Sponsors

[Become a sponsor] and your logo will show up here with a link to your website.

Backers

[Become a backer] and get your image on our README on Github with a link to your site.

Contributors

This project exists thanks to all the people who contribute. [Contribute].


License

CameraKit is MIT License