记录一次拍照预览崩溃问题

该bug目前只发现在小米11上复现 MIUI12
发生异常流程:

使用camera2拍照 ==> 存到file ==> 获得bitmap ==> 剪切 ==> 内存保存剪切后bitmap,startActivityResult跳转到大图展示 ==> 预览后确定保存bitmap到文件 ==> 获取地址setResult()退出预览 ==> 在拍照页面获取地址setResult()然后finish()

发生异常:
Canvas: trying to use a recycled bitmap android.graphics.Bitmap

1、从各个方面看是bitmap回收引起的异常,所以我注释了bitmap回收代码 ==> 结果无效

2、怀疑是我横屏拍照引起的异常,改成竖屏 ==> 结果无效

3、发现现象,如果在

预览后确定保存bitmap到文件 ==> 获取地址setResult()退出预览==> 在拍照页面获取地址setResult()然后finish()

改成

预览后确定保存bitmap到文件 ==> 获取地址setResult()退出预览==> 在拍照页面获取地址setResult()然后finish()

不会异常退出

预览后确定保存bitmap到文件 ==> 退出预览

不会异常退出

使用camera2拍照 ==> 存到file ==> 获得bitmap ==> 剪切 ==> 内存保存剪切后bitmap

不会异常退出

怀疑是预览页面保存图片引起的问题,修改保存位置修改逻辑为
使用camera2拍照 ==> 存到file ==> 获得bitmap ==> 剪切 ==>本次存储文件获取地址,startActivityResult跳转到大图展示 ==> 预览 ==> 获取地址setResult()退出预览 ==> 在拍照页面获取地址setResult()然后finish()

正常

你可能感兴趣的:(记录一次拍照预览崩溃问题)