在android上获取错误的相机百万像素值

时间:2015-03-23 06:55:52

标签: android camera pixels

我使用以下代码获取相机百万像素的设备。但它不适用于所有Android手机。我有办法为所有Android手机获得完美的像素。

这些代码适用于三星s4,moto e,moto g2。 它不适用于micromax 310.A310规格为13 MP,4128 x 3096像素,但代码为15MP,4864 * 3120,特别是错误的最大宽度和高度。

    int pixels = 0;
    Camera camera=Camera.open(0);    // For Back Camera
    android.hardware.Camera.Parameters params = camera.getParameters();
    //Gets the supported picture sizes.

    List sizes = params.getSupportedPictureSizes();
    Camera.Size  result = null;



    ArrayList<Integer> arrayListForWidth = new ArrayList<Integer>();
    ArrayList<Integer> arrayListForHeight = new ArrayList<Integer>();

    for (int i=0;i<sizes.size();i++){
        result = (Size) sizes.get(i);
        arrayListForWidth.add(result.width);
        arrayListForHeight.add(result.height);
    } 


    if(arrayListForWidth.size() != 0 && arrayListForHeight.size() != 0){
        pixels= ((Collections.max(arrayListForWidth)) * (Collections.max(arrayListForHeight))) / 1000000 ;
    }
    camera.release();

    arrayListForWidth.clear();
    arrayListForHeight.clear();

    return pixels;

0 个答案:

没有答案