Androidでカメラで撮影した画像のUri +サムネイルを取得する

Androidでカメラで撮影した画像のUri +サムネイルを取得する photo 2 C

Androidでカメラで撮影した画像のUri +サムネイルを取得する

タグ:



質問

build-in Androidカメラで作成した画像でImageViewを更新したいと思います。 私は次のコードを使用します:

void getPhoto() {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, TAKE_PICTURE);
}

その後、私は写真を取得します:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == TAKE_PICTURE) {
Bitmap photo = (Bitmap) data.getExtras().get(“data”);
ImageView photoView = (ImageView) findViewById(R.id.photoId);
photoView.setImageBitmap(photo);
}
}

しかし、このコードでは、私が作った写真のサムネイルだけを取得します。私の質問は、サムネイルではなく元の画像で動作するように写真のUriを取得するにはどうすればいいですか?

PS。私は実際に写真のサムネイルが必要ですが、私は元の写真のUriも必要です。

ベストアンサー

私は自分のURIを保存する場所を伝える意図に入れて、それがどこにあるかを知っています。 ファイルのいくつかのフィールドを作成します。

Androidでカメラで撮影した画像のUri +サムネイルを取得する photo 1

private String imagePath = “/sdcard/Camera/test.jpg”;
private File originalFile;

ファイルを初期化します。

originalFile = new File(imagePath);

URIを余分に渡して、インテントでカメラアプリを起動します。

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
Uri outputFileUri = Uri.fromFile(originalFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
startActivityForResult(intent, RESULT_CAPTURE_IMAGE);

onActivityResult()でURIを抽出します。

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == RESULT_CAPTURE_IMAGE && resultCode == Activity.RESULT_OK) {
mBitmap = BitmapFactory.decodeFile(originalImagePath, BitmapFactoryOptions); //set whatever bitmap options you need.

createBitmapを使用してビットマップを作成するか、必要なものにファイルパスを使用できるようになりました

Androidでカメラで撮影した画像のUri +サムネイルを取得する photo 0





source
カメラから撮影した写真からサムネイルを作成するには?
カメラで撮影した写真にAndroidが画像を追加
カメラから撮影した画像パスを取得する方法
カメラから撮影した画像を表示する
Android:元の画像のUriを指定して、SDカードの画像のサムネイルを取得する
ライブラリやカメラで撮影したUIImagePickerControllerPHAssetから画像名を取得するには?
Androidで画像サムネイルを取得する
Android:固定アスペクト比でカメラで撮影した後に画像をトリミングする
UIImagePickerカメラから撮影した後に画像をトリミングする方法は?
カメラで撮影したアプリケーション画像を保存する最良の方法
Rating