错误堆栈:

    --------- beginning of crash2020-09-14 13:43:51.723 10343-10343/com.xiaomi.micolauncher E/AndroidRuntime: FATAL EXCEPTION: main    Process: com.xiaomi.micolauncher, PID: 10343    java.lang.RuntimeException: takePicture failed        at 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() {                         @Override                    public void onPictureTaken(byte[] data, Camera camera) {                                                     mHasTakePicture = false;                    }                });

然后在callback 里面 重置mHasTakePicture

更多相关文章

  1. Android之Audio常用属性变量
  2. Android Ant打包及其环境变量配置
  3. android入门知识:android使用全局变量
  4. Mac修改环境变量路径中带空格的处理
  5. Android SDK环境变量配置(windows和Linux)
  6. Android 如何配置adb环境变量
  7. android中全局变量的运用
  8. Android中用Application类实现全局变量

随机推荐

  1. 《android用SAX解析xml》
  2. android按键 禁用
  3. Android(安卓)自定义ProgressDialog示例
  4. java.lang.ClassCastException: android.
  5. Android Studio 使用技巧(2)
  6. Android图片旋转,缩放,移位,倾斜,对称
  7. android中SOAP的anytype问题
  8. Android应用程序线程消息循环模型分析(4)
  9. 2019/5/5-Android
  10. [Android]How to use FFmpeg to decode A