Android :java.lang.RuntimeException: takePicture failed
错误堆栈:
--------- beginning of crash
2020-09-14 13:43:51.723 10343-10343/com.xiaomi.micolauncher E/AndroidRuntime: FATAL EXCEPTION: mainProcess: com.xiaomi.micolauncher, PID: 10343java.lang.RuntimeException: takePicture failedat android.hardware.Camera.native_takePicture(Native Method)at android.hardware.Camera.takePicture(Camera.java:1573)at android.hardware.Camera.takePicture(Camera.java:1515)at com.xiaomi.refrigerator.scan.ScanActivity.onClick(ScanActivity.java:286)at android.view.View.performClick(View.java:6610)at android.view.View.performClickInternal(View.java:6583)at android.view.View.access$3100(View.java:780)at android.view.View$PerformClick.run(View.java:26076)at android.os.Handler.handleCallback(Handler.java:873)at android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:209)at android.app.ActivityThread.main(ActivityThread.java:6702)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
问题原因:
因为调用takepic 之后,相机默认会关闭preview,你需要调用startPreview,然后才能调用takePic.
我这里是快速双击拍照Button 导致调用两次takepic 导致崩溃。
增加了一个变量,表示当前是不是调用了takePic。
private boolean mHasTakePicture = false;getCamera().takePicture(null, null, new Camera.PictureCallback() {@Overridepublic void onPictureTaken(byte[] data, Camera camera) {mHasTakePicture = false;}});
然后在callback 里面 重置mHasTakePicture
Android :java.lang.RuntimeException: takePicture failed相关推荐
- 我的Android进阶之旅------gt;Android中MediaRecorder.stop()报错 java.lang.RuntimeException: stop failed....
今天在调用MediaRecorder.stop(),报错了,java.lang.RuntimeException: stop failed. E/AndroidRuntime(7698): Cause ...
- Android中MediaRecorder.stop()报错 java.lang.RuntimeException: stop failed.
E/AndroidRuntime(7698): Cause by: java.lang.RuntimeException: stop failed. if (mediarecorder != null ...
- java.lang.RuntimeException: setDataSource failed: status = 0x80000000
获取视频的时长的方法: try {MediaMetadataRetriever retriever = new MediaMetadataRetriever(); retriever.setDataS ...
- java.lang.RuntimeException: setParameters failed
java.lang.RuntimeException: setParameters failed 解决方法:只能设置系统能支持的宽高参数. Camera.Parameters param = mCam ...
- RocketMQ集群启动报错:java.lang.RuntimeException: Lock failed,MQ already started
启动RocketMQ集群后报错: java.lang.RuntimeException: Lock failed,MQ already startedat org.apache.rocketmq.st ...
- 解决 Android java.lang.RuntimeException: Stub!
错误堆栈: java.lang.RuntimeException: Stub!at org.apache.http.message.AbstractHttpMessage.<init>(S ...
- Invocation failed Unexpected end of file from server java.lang.RuntimeException: Invocation failed U
看下错误日志: Invocation failed Unexpected end of file from server java.lang.RuntimeException: Invocationf ...
- Android --- java.lang.RuntimeException: Can‘t create handler inside thread that has not called Loop
报错信息如下: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.pr ...
- 真机测试报错ERROR/AndroidRuntime: java.lang.RuntimeException: setParameters failed解决办法
这个错误是和调用相机摄像头相关的. 产生这个错误的原因主要在于代码控制分辨率的显示和真机测试分辨率不一样. 一:解决办法 WindowManager wm = (WindowManager) getS ...
最新文章
- 上市公司相关财务指标
- HTML5 拖拽的简单实践
- php网页论坛制作教程,PHP开发 小型论坛教程之登录HTML页面
- 限制网速软件_最具良心的三款下载软件丨你pick哪款?
- 现在新电脑主板带WiFi,实不实用,稳定吗?
- 命令行运行postman
- MyEclipse中解决“Save could not be completed”问题!
- 国内物联网平台初探(五) ——机智云IoT物联网云服务平台及智能硬件自助开发平台...
- cockroachdb设计翻译
- 计算机应用教研室工作计划,高校教研室工作计划
- 阿里云SDK实现短信发送
- 【已解决】平板远程控制WIN10电脑
- HTML 事件参考手册:全局事件属性
- 浅析HiShop、Shopex、ECshop、V5shop四大网店系统
- GIS技巧100例25-ArcGIS之shp文件修复
- 线性代数【8】-1 线性方程组 - 非常重要的概念 - 三个基本的问题
- 工业互联网,姓工,名互
- github gitee 仓库大小限制 单个文件大小限制
- “阻塞(pend)”与“挂起(suspend)”的区别?
- DSP6657打印ti.sysbios.heaps.HeapMem,内存问题
热门文章
- springmvc框架介绍_Java修行第071天 ---SpringMVC(上)
- oracle锁表语句执行提示无法终止当前对话_显示Oracle数据库表或行上持有锁的所有会话...
- java多线程-阻塞队列BlockingQueue
- go打造以太坊合约测试框架
- 热点账户问题和常用解决方案【上】
- 使用批处理复制并以时间规则重命名文件
- RecyclerView 使用指南
- CSS 行内格式化上下文中的各种高度计算
- css中overflow:hidden的属性 可能会导致js下拉菜单无法显示
- Eclipse常见问题集锦