Easy integration of camera for image and video capturing with Image Picker.
Clone or download
Pull request Compare This branch is 21 commits behind sandrios:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
gradle/wrapper
sandriosCamera
static
.gitignore
.travis.yml
LICENSE
README.md
build.gradle
gradle.properties
gradlew
gradlew.bat
settings.gradle

README.md

8

sandriosCamera

sandrios studios Android Arsenal Build Status API Download

Camera Library for Android

sandrios camera allows developers to integrate image and video capturing without dealing with the complicated camera APIs.

It includes image picker interface inside the cameraview enabling the user to access recent media from inside the camera module.

Download

You can download an aar from GitHub's releases page.

Or use Gradle:

repositories {
   jcenter()
}

dependencies {
  compile 'com.sandrios.android:sandriosCamera:1.0.9'
}

Or Maven:

<dependency>
  <groupId>com.sandrios.android</groupId>
  <artifactId>sandriosCamera</artifactId>
  <version>1.0.9</version>
  <type>pom</type>
</dependency>

ProGuard

Depending on your ProGuard (DexGuard) config and usage, you may need to include the following lines in your proguard.cfg

-keep public class com.sandrios.** { *; }

-keep public class android.support.v7.widget.** { *; }
-keep public class android.support.v7.internal.widget.** { *; }
-keep public class android.support.v7.internal.view.menu.** { *; }

-keep public class * extends android.support.v4.view.ActionProvider {
    public <init>(android.content.Context);
}

-dontwarn android.support.**

-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
  **[] $VALUES;
  public *;
}

-dontwarn com.yalantis.ucrop**
-keep class com.yalantis.ucrop** { *; }
-keep interface com.yalantis.ucrop** { *; }

-keepattributes *Annotation*
-keepclassmembers class ** {
    @com.squareup.otto.Subscribe public *;
    @com.squareup.otto.Produce public *;
}

How do I use Sandrios Camera?

Please check the sample project included for more examples:

  private static final int CAPTURE_MEDIA = 368;

  // showImagePicker is boolean value: Default is true
  private void launchCamera() {
      new SandriosCamera(activity, CAPTURE_MEDIA)
                                  .setShowPicker(showImagePicker)
                                  .setVideoFileSize(15) //File Size in MB: Default is no limit
                                  .setMediaAction(CameraConfiguration.MEDIA_ACTION_VIDEO) // default is CameraConfiguration.MEDIA_ACTION_BOTH
                                  .enableImageCropping(true) // Default is false.
                                  .launchCamera();
  }

  @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);

         if (requestCode == CAPTURE_MEDIA && resultCode == RESULT_OK) {
             Log.e("File", "" + data.getStringExtra(SandriosCameraConfiguration.Arguments.FILE_PATH));
             Toast.makeText(this, "Media captured.", Toast.LENGTH_SHORT).show();
         }
     }

Status

  • Flash Mode (Testing Needed)

Comments/bugs/questions/pull requests are always welcome!

Compatibility

  • Android SDK: Sandrios Camera requires a minimum API level of 14.

Download

You may also find precompiled aar on the releases page.

Getting Help

To report a specific problem or feature request, open a new issue on Github. For questions, suggestions, or anything else -- github@sandrios.com

Contributing

Before submitting pull requests, contributors must sign Google's individual contributor license agreement.

Thanks

  • Glide for the Image Loading Framework
  • Ted Permission for the Permission Management in Android 23+
  • uCrop for the Image Cropping
  • Everyone who has contributed code and reported issues!

Author

sandrios studios - @sandrios on GitHub

License

MIT. See the LICENSE file for details.

Disclaimer

This is not an official Google product.