Dhruvisha
Dhruvisha

Reputation: 2530

Android Image Capturing funationality does not work another time

I have made an application which captures image in every one minute and uploads it to server. The application is working nice on phone but when I run the same application on tablet, It captures image and uploads once; next time it shows black screen.

What should i do now?

Upvotes: 3

Views: 162

Answers (1)

Dhruvisha
Dhruvisha

Reputation: 2530

I found solution of this . My camera could not set parameters at preview time. So I found a good function to set parameters of camera for tablets.

private Size getOptimalPreviewSize(List<Size> sizes, int w, int h) {
    // TODO Auto-generated method stub
    final double ASPECT_TOLERANCE = 0.05;
    double targetRatio = (double) w / h;
    if (sizes == null) return null;

    Size optimalSize = null;
    double minDiff = Double.MAX_VALUE;

    int targetHeight = h;

    // Try to find an size match aspect ratio and size
    for (Size size : sizes) {
    double ratio = (double) size.width / size.height;
    if (Math.abs(ratio - targetRatio) > ASPECT_TOLERANCE) continue;
    if (Math.abs(size.height - targetHeight) < minDiff) {
    optimalSize = size;
    minDiff = Math.abs(size.height - targetHeight);
    }
    }

    // Cannot find the one match the aspect ratio, ignore the requirement
    if (optimalSize == null) {
    minDiff = Double.MAX_VALUE;
    for (Size size : sizes) {
    if (Math.abs(size.height - targetHeight) < minDiff) {
    optimalSize = size;
    minDiff = Math.abs(size.height - targetHeight);
    }
    }
    }
    return optimalSize;
}

Upvotes: 5

Related Questions