MediaStore.ACTION_IMAGE_CAPTURE インテントを使用して画像をキャプチャしています。ほとんどのデバイスで正常に動作しています。しかし、一部の最新の Android デバイスでは期待どおりに正しく動作しません。
私の意図は、カメラを使用して画像をキャプチャしてサーバーに送信することですが、その画像をデバイスのデフォルトのギャラリーに保存することではありません。
* * : 画像をキャプチャすると、一部の最新の Android デバイスでキャプチャされた画像ではなく、onActivityResult メソッドで他のギャラリー画像が返されます。以下のコードを使用して、画像をキャプチャして保存しています。
public void launchCamera(View v) {
Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(camera, CAMERA_PIC_REQUEST );
}
onActivityResult メソッドでは、
String[] projection = { MediaStore.Images.ImageColumns.SIZE,
MediaStore.Images.ImageColumns.DISPLAY_NAME,
MediaStore.Images.ImageColumns.DATA, BaseColumns._ID, };
Cursor c = null;
Uri u = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
try {
if (u != null) {
c = managedQuery(u, projection, null, null, null);
}
if ((c != null) && (c.moveToLast())) {
Bitmap thumbnail = getBitMapFromLocalPath(c.getString(2), 3);
idsImagesgot.add(thumbnail);
ContentResolver cr = getContentResolver();
cr.delete( MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
BaseColumns._ID + "=" + c.getString(3), null);
}
} finally {
if (c != null) {
c.close();
}
}
この点で誰でも私を助けることができますか?
前もって感謝します。
サティッシュ