public class MainActivity extends AppCompatActivity {
ImageView image;
public static final int REQ_1 = 1;
public static final int REQ_2 = 2;
private String mFilePath;
private Bitmap mBitmap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
image = (ImageView) findViewById(R.id.iv_img);
mFilePath = Environment.getExternalStorageDirectory().getPath();
mFilePath = mFilePath + "/"+System.currentTimeMillis()+ ".png";
}
public void start1(View view) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, REQ_1);
}
public void start2(View view) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
Log.d("MainActivity", mFilePath);
Uri photoUri = Uri.fromFile(new File(mFilePath));
intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
startActivityForResult(intent, REQ_2);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
if (requestCode == REQ_1) {
Bundle bundle = data.getExtras();
Bitmap bitmap = (Bitmap) bundle.get("data");
image.setImageBitmap(bitmap);
} else if (requestCode == REQ_2) {
FileInputStream mFis;
try {
mFis = new FileInputStream(mFilePath);
Log.d("MainActivity", "mFis:" + mFis);
mBitmap = BitmapFactory.decodeStream(mFis);
Log.d("MainActivity", "mBitmap:" + mBitmap);
image.setImageBitmap(mBitmap);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
}