Problema de orientação da câmera no Android

Estou criando um aplicativo que usa a câmera para tirar fotos. Aqui está o meu código fonte para fazer isso:

        File file = new File(Environment.getExternalStorageDirectory(),
            imageFileName);
    imageFilePath = file.getPath();
    Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
    //Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
    startActivityForResult(intent, ACTIVITY_NATIVE_CAMERA_AQUIRE);

EmonActivityResult() método, eu usoBitmapFactory.decodeStream() para capturar a imagem.

Quando executo meu aplicativo no Nexus one, ele roda bem. Mas quando executo o Samsung Galaxy S ou o HTC Inspire 4G, a direção da imagem não está correta.

Capture com o modo retrato, a imagem real (salve no cartão SD) sempre gira 90 grau

Pré-visualização da imagem após o disparo --------- Imagem real no cartão SD

Capture com o modo paisagem, todas as coisas são boa

Pré-visualização da imagem após o disparo --------- Imagem real no cartão SD

questionAnswers(3)

yourAnswerToTheQuestion