- カメラアプリを使用して画像をキャプチャする場合: カメラアプリを起動し、ユーザーが画像をキャプチャすると、その画像はデフォルトの保存場所に保存されます。保存場所は通常、外部ストレージの特定のディレクトリです。以下のコード例では、キャプチャされた画像のパスを取得する方法を示します。
private String getCapturedImagePath() {
String imagePath = null;
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, null, null, null);
if (cursor != null && cursor.moveToLast()) {
int columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
imagePath = cursor.getString(columnIndex);
cursor.close();
}
return imagePath;
}
上記のメソッドを使用すると、キャプチャされた最新の画像のパスが取得できます。
- Viewをキャプチャして画像を保存する場合: Viewをキャプチャして画像を作成し、それを保存する場合、保存先のパスを指定する必要があります。以下のコード例では、キャプチャした画像を指定したパスに保存する方法を示します。
private void saveCapturedImage(Bitmap capturedImage, String filePath) {
File file = new File(filePath);
try {
FileOutputStream fos = new FileOutputStream(file);
capturedImage.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.flush();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
上記のメソッドを使用すると、指定したパスにキャプチャした画像が保存されます。
以上の方法を使用すると、Androidアプリでキャプチャした画像のパスを取得することができます。