Android调用摄像头后系统回收activity造成数据丢失

在开发Android应用时,遇到红米note手机在调用摄像头后,由于系统回收activity导致图片路径丢失的问题。分析原因是activity被系统回收后重新加载,解决方法是利用onSaveInstanceState和onCreate保存及恢复数据。
摘要由CSDN通过智能技术生成

在做聊天模块时,有发送拍照的功能,奇葩的是别的手机都没问题,唯独红米note调用摄像头后返回页面没有任何响应,调试中发现返回的图片路径为空,返回的路径怎么能为空呢?后来发现是系统把activity回收掉了,返回来的时候,activity重新加载了,所有返回的图片路径已经不存在了,所以只能想办法恢复图片路径的数据,如下代码是开启摄像头和返回的信息:

<span style="white-space:pre">			</span>Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                            // 指定调用相机拍照后照片的储存路径
                            intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(getCacheFile
                                                                                          (mImageName)));
                            startActivityForResult(intent, PHOTO_REQUEST_TAKE_PHOTO);
<span style="white-space:pre">	</span>if (reque
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值