SquareCamera
boxme
579
Visit GitHub RepoCamera

SquareCamera

Android Arsenal

Description

Android module that takes a square photo using the native Android Camera APIs. The new Camera2 APIs from the L release is not used because support has to go back to SDK version 14 for my own requirement.

Features

  • Tap to focus
  • Two fingers zooming
  • Front & Back camera
  • Flash mode (Saved when the user exits)
  • Supports both portrait & landscape
  • Runtime permission is supported for saving/viewing photos

SDK Support

Support from SDK version 14 onwards

Download

jCenter:

repositories {
    jcenter()
}

dependencies {
    compile 'com.github.boxme:squarecamera:1.1.0'
}

Example

private static final int REQUEST_CAMERA = 0;

// Check for camera permission in MashMallow
public void requestForCameraPermission(View view) {
    final String permission = Manifest.permission.CAMERA;
    if (ContextCompat.checkSelfPermission(MainActivity.this, permission)
            != PackageManager.PERMISSION_GRANTED) {
        if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, permission)) {
            // Show permission rationale
        } else {
            // Handle the result in Activity#onRequestPermissionResult(int, String[], int[])
            ActivityCompat.requestPermissions(YourActivity.this, new String[]{permission}, REQUEST_CAMERA_PERMISSION);
        }
    } else {
        // Start CameraActivity
    }
}

// Start CameraActivity
Intent startCustomCameraIntent = new Intent(this, CameraActivity.class);
startActivityForResult(startCustomCameraIntent, REQUEST_CAMERA);

// Receive Uri of saved square photo
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode != RESULT_OK) return;

    if (requestCode == REQUEST_CAMERA) {
        Uri photoUri = data.getData();
    }
    super.onActivityResult(requestCode, resultCode, data);
}

Video Demo

Link: https://youtu.be/cSGFiP-gZYU

Become a better Android Developer
Millions of developers are learning at MindOrks

Online Training Program

Featured Blogs

Our Team

MindOrks is Certainly one of the best online blog to stay on top of all the Android development news, coding and design patterns. Finally a blog I can count on to keep myself updated with latest and greatest things happening in Android world.

Vipul Shah
Android Developer
Microsoft

Become Pro in Android by watching videos

OUR LEARNERS WORK AT