android 系统内置拍照功能

这篇博客介绍了如何在Android应用中启动系统内置的拍照功能,并详细讲述了回调函数在处理拍摄影像中的作用。同时,针对Activity可能意外终止的情况,提供了使用onSaveInstanceState和onRestoreInstanceState方法来保存及恢复图片显示的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    启动系统内置拍照功能:

    

Intent localIntent=new Intent("android.media.action.IMAGE_CAPTURE");
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); 
if(fileUri == null)
	System.out.println("fileUri is null, first");
	localIntent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name
	startActivityForResult(localIntent, 1);
附带拍照后图片保存地址这个参数fileUri

回调函数处理图片:

@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		// TODO Auto-generated method stub
		super.onActivityResult(requestCode, resultCode, data);
		switch(requestCode){
		case 1:
			if(data==null){
				mCurrentPhotoPath = getRealPathFromURI(fileUri);
				setPic(imageNum);
			}else{
				fileUri=data.getData();
				mCurrentPhotoPath = getRealPathFromURI(fileUri);
				setPic(imageNum);
			}
			break;
		}
	}

处理逻辑,根据图片路径,获取图片显示。

如果Activity意外终止,保存图片方法:

onSaveInstanceState(Bundle outState)方法中保存

onRestoreInstanceState(Bundle savedInstanceState) 中调用显示。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值