Растровое изображение Android сохраняется как странные линии

Когда я сохраняю изображение, сделанное на определенных устройствах, оно сохраняется в виде каких-то странных линий. Я понятия не имею, как описать внешний вид этого изображения, поэтому вот оно:

enter  описание изображения здесь

Мой код отлично работает на большинстве устройств, но у нас было два наших пользователя, говорящих со следующими устройствами.
1. HTC Thunderbolt
2. HTC Inspire
Кто-нибудь знает, как это происходит? Вот мой код:

PictureCallback jpegCallback = new PictureCallback() {

    public void onPictureTaken(byte[] data, Camera camera) {
        mPreview.mCamera.startPreview();
        Log.e(TAG, "onPictureTaken - jpegCallback");

        try {
            // start camera saving system
            CameraPhoneStorageSystem camStorageSys = new CameraPhoneStorageSystem(
                    mContext);
            FileOutputStream out = null;

            String str = CameraPhoneStorageSystem
                    .returnImageNewNameForExternalMemory();
            galleryAddPic(str);

            out = new FileOutputStream(str);
            // mutableBitmap.compress(CompressFormat.JPEG, 85, out);
            out.write(data, 0, data.length);

            out.flush();
            out.close();
            out = null;
            Toast.makeText(mContext, "saved..", Toast.LENGTH_SHORT).show();

        } catch (IOException e) {
            Toast.makeText(
                    mContext,
                    "Error: Problem Saving Image.. Please check device memory",
                    Toast.LENGTH_SHORT).show();
            Log.e("saving", "problem saving images", e);

        } catch (Exception e) {
            // fail
            Log.d(TAG, "ERROR: " + e.getMessage());
        } finally {
            anyPicturesTaken = true;
            progressBar.setVisibility(View.GONE);
            snapButton.setVisibility(ImageButton.VISIBLE);
            Runtime.getRuntime().gc();

        }

    }

};

Спасибо за любую помощь...


person Abraham Ventura    schedule 12.08.2012    source источник


Ответы (1)


Это потому, что ваше устройство не поддерживает это изображение, проверьте эту ссылку, спросите и ответьте здесь

Байт Android[] для изображения в Camera.onPreviewFrame

Надеюсь, это поможет!

person Numair    schedule 12.08.2012