5

重複の可能性 Android ネイティブ カメラを使用した写真の保存を停止する

皆さんこんにちは、私はこのようにIntentを使ってカメラを開いています

Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, ACTIVITY_CAMERA);

それは問題なく、完璧な結果が得られますが、問題は、これにより画像がSDカードにも保存されることです。これを防止して画像の保存を停止し、そのデータをonActivityResult()メソッドに使用するだけです

4

1 に答える 1

1

よくわかりませんが試してみてください。それはあなたを助けるかもしれません。

onActivityResult 私は画像を取得し、それを別のビットマップに保存しようとしています。

これを参照してください:

if(resultCode == RESULT_OK && requestCode==TAKE_PHOTO_CODE){
         final File file = getTempFile(this);         
         try {           
             tempBitmap = Media.getBitmap(getContentResolver(), Uri.fromFile(file));
             photoBitmap = Bitmap.createScaledBitmap(tempBitmap, display.getWidth(), display.getHeight(), true);
             takePhotoFromCamera = true;
             // do whatever you want with the bitmap (Resize, Rename, Add To Gallery, etc)         
        } catch (FileNotFoundException e) {           
            e.printStackTrace();         
        } catch (IOException e) {           
            e.printStackTrace();         
        } 
    }

ここで、ファイルをビットマップに取り込んだ後、ファイルを削除できます。そのため、SDカードに保存されていない可能性があります。

それを試してみてください。それがあなたを助けることを願っています。

また 。. .

これを使って:

ユーザーが最後に撮影した写真を取得するコード:

String[] projection = new String[]
{MediaStore.Images.ImageColumns._ID, MediaStore.Images.ImageColumns.DATA,
 MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,
 DATE_TAKEN, MediaStore.Images.ImageColumns.MIME_TYPE};

final Cursor cursor = managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
                                   projection, null, null, DATE_TAKEN + " DESC"); 

その画像を取得したら、それを削除します。だからそれはあなたを助けるでしょう。

楽しみ。:))

于 2012-01-25T10:42:26.710 に答える