インテントを使用する Android アプリケーションがあります。コードは次のとおりです。
private static final int CAPTURE_IMAGE= 1;
[...]
Uri imageUri = helper.createImageDestinationUri(null, filename);
[...]
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
startActivityForResult(intent, CAPTURE_IMAGE);
そして、ここで結果を取得します。
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAPTURE_IMAGE) {
if (requestCode == Activity.RESULT_OK) {
Toast.makeText(this, "Image saved to:\n" +
data.getData(), Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(getApplicationContext(), "Error", Toast.LENGTH_SHORT).show();
}
}
}
必要なすべての権限を持っています。
奇妙なこと:
最後に、写真は常に SD カードにありますが、RESULT_OK
結果が得られません。
何が問題なのですか?