It's finally easy to take photos/videos via camera or get photos/videos from gallery on Android.



Worked on: July 21, 2017 - Present


Logo for shutter android project

Release Awesome

What is Shutter?

Shutter is an Android library to take photos, record videos, pick images/videos from gallery, with ease. I always have difficulty working with images/videos while developing Android apps especially since file providers were added.

Why use Shutter?

  • Less bugs. No more publishing apps and have your app crash on a user’s devices because of file permission issues you did not handle or boilerplate code you forgot to include (believe me, I have done this many times).
  • No more copy/paste of boilerplate code. Install lib, call Shutter, and be done across all of your apps.
  • Lightweight. Check out the methods count here
  • No Android runtime permissions needed. No need to ask for reading/writing files permissions.
  • Java and Kotlin support. Shutter-Android is written in Kotlin :)

How to use Shutter?

shutterResultListener = Shutter.with(this)
    .snap(object : Shutter.ShutterResultCallback {
        override fun onComplete(result: Shutter.ShutterResult) {
            result.absoluteImageFile // <--- file:// path to the image.
        override fun onError(humanReadableErrorMessage: String, error: Throwable) {
            Log.d("SHUTTER_EXAMPLE_APP", "Error encountered: ${error.message}")
            Snackbar.make(findViewById(, humanReadableErrorMessage, Snackbar.LENGTH_LONG).show()

Pretty simple, huh? Check out the guide on how to use it.

I love meeting new people passionate about startups and apps.

Please, feel free to contact me anytime.