標準ギャラリーから切り抜いた画像を取得する
標準の連絡先編集画面で画像を選ぶときのアレを自作アプリに組み込む方法について。
1. Intent を投げる
標準ギャラリーを以下の通り呼び出すと
- 画像の選択
- 画像の切り抜き(顔認識)
- 自作アプリ onActivityResult() 呼び出し
の順で処理される。
final Intent intent = new Intent(Intent.ACTION_PICK); intent.setType("image/*"); intent.putExtra("crop", "true"); intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); intent.putExtra("outputX", 96); intent.putExtra("outputY", 96); intent.putExtra("return-data", true); startActivityForResult(intent, REQUEST_CODE_PICK_PHOTO);
2. 画像を受け取る
onActivityResult() では以下のようにデータを受け取る。
final Bitmap photo = data.getParcelableExtra("data");