在做拍照后图片显示的时候,第一次BitmapFactory.decodeFileBitmapFactory.decodeFile没有返回空,能够正常显示图片,到第二次拍照查看照片时返回null,查看路径都没问题,两张都有保存下来,搜了很多类似的问题,都没有解决,可能他们的情况和我不同,我是第一次可以显示第二次不能,后来发现,如果第一次拍照后不去查看照片,直接继续拍照,后面不管几张都能查看,跟踪发现在第一次拍照后去查看照片时,执行了Log.v(TAG, "surfaceDestroyed");方法,于是修改了mPreSurfaceView方法,避免执行到surfaceDestroyed,运行,问题解决。

     不明白为啥执行了相机的surfaceDestroyed 会导致BitmapFactory.decodeFile返回null,我是在onPictureTaken执行成功后执行的保存操作,单独去相册查看照片又没问题,有明白的道友么?

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐