0

私はこのチュートリアルに従おうとしています: http://mobile.tutsplus.com/tutorials/android/capture-and-crop-an-image-with-the-device-camera/

しかし、写真を撮った後、写真をトリミングしようとすると、「画像を読み込んでいます...」というメッセージが永遠に表示されます。

「picUri = data.getData();」をトーストしようとしました そしてそれはnullを返しました。一部のデバイスでは、写真を撮るためにファイル名を指定する必要があると読んだので、試してみましたが、良い結果は得られませんでした。

Intent captureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, "file:///tmp/android.jpg");
                startActivityForResult(captureIntent, CAMERA_CAPTURE);

Galaxy Nexus と Galaxy 5 でテストしています。

誰かが何か考えがありますか?

ありがとうございました。

4

1 に答える 1

0

EXTRA_OUTPUT に指定しているファイル パスが間違っていると思います。代わりに、次のようなものを使用してみてください。

Intent captureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
String storagePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/tmp/android.jpg";
captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, storagePath);
startActivityForResult(captureIntent, CAMERA_CAPTURE);
于 2012-09-27T20:44:25.373 に答える