Android QRCodeReaderView 和Camera API冲突

开发一款小功能,核心功能是二维码扫描,然后发送到远端服务器。App结构分为两个Activity,Activity A 负责二维码扫描,然后将参数存到本地,再启动Activity B,在Activity B中,需要打开前置摄像头拍照。实际代码写好之后, 单独运行A,B都没问题,但是串起来就有问题。

LogCat报错为:

E/AndroidRuntime(22442): at com.dlazaro66.qrcodereaderview.QRCodeReaderView.surfaceChanged(QRCodeReaderView.java:189)

上一行错误是在start Activity B之后的,说明Activity A没有完全finish掉。

解决方案:

调用持有mydecoderview的父容器,调用removeView方法强行Destroy掉就可以了。

时间: 2024-10-13 16:13:13

Android QRCodeReaderView 和Camera API冲突的相关文章

Android Camera API/Camera2 API 相机预览及滤镜、贴纸等处理

Android Lollipop 增加了Camera2 API,并将原来的Camera API标记为废弃了.相对原来的Camera API来说,Camera2是重新定义的相机 API,也重构了相机 API 的架构.初看之下,可能会感觉Camera2使用起来比Camera要复杂,然而使用过后,你也许就会喜欢上使用Camera2了.无论是Camera还是Camera2,当相机遇到OpenGL就比较好玩了. 问题及思路 Camera的预览比较常见的是使用SurfaceHolder来预览,Camera2

Android 音视频开发(四):使用 Camera API 采集视频数据

本文主要将的是:使用 Camera API 采集视频数据并保存到文件,分别使用 SurfaceView.TextureView 来预览 Camera 数据,取到 NV21 的数据回调. 注: 需要权限:<uses-permission android:name="android.permission.CAMERA" /> 一.预览 Camera 数据 做过Android开发的人一般都知道,有两种方法能够做到这一点:SurfaceView.TextureView. 下面是使用

Android 新老两代 Camera API 大起底

https://blog.csdn.net/Byeweiyang/article/details/80515192 0.背景简介 最近有一部分相机相关的需求,专注于对拍摄的照片.视频的噪点.色温.明暗等方面进行优化.一般我们在生活中使用相机来拍照的话,在前期拍摄时,就可以通过调整相机的拍摄参数,如:曝光时间.光圈大小.ISO.曝光补偿等等,使得拍摄下来的照片本来的色彩.明暗就处于比较理想的状态,无需过度依赖后期处理.而手机端的拍摄则往往受限于硬件和机型,无法在前期如此"收放自如",我们

修改Android Studio默认的API Level(SDK版本)

原文:修改Android Studio默认的API Level(SDK版本) Android Studio(2.1.2)新建工程的时候只会让你选择最低支持的SDK版本,默认的目标编译SDK版本会以系统当前SDK中最新SDK platform作为目标的API Level.但是很多时候我们并不需要最新的SDK版本,如何修改呢? 方法是:修改工程目录中的Gradle Scripts->build.gradle(Module:app)中的相关行,具体见下图: 当然也可以图形化操作,右键工程目录选择"

Android 5.1 Camera 架构学习(一)——Camera初始化

Android Camera 采用C/S架构,client 与server两个独立的线程之间(CameraService)使用Binder通信. 一 CameraService的注册. 1.手机开机后,会走init.rc流程,init.rc会启动MediaServer Service. service media /system/bin/mediaserver class main user root #### # google default #### # user media #### gr

Android系统版本与API等级对应关系表

从Android官网拷过来的,方便查阅... 官网地址:https://developer.android.com/guide/topics/manifest/uses-sdk-element.html What is API Level? API Level is an integer value that uniquely identifies the framework API revision offered by a version of the Android platform. P

Android sdk version and API level

确定app的系统API level,在mainfest中设置minSdkVersion和targetSdkVersion:对app进行版本控制,在mainfest中设置versionCode和versionName. Supporting Different Platform Versions Tip: In order to provide the best features and functionality across several Android versions, you shou

Android中的隐藏API和Internal包的使用之获取应用电量排行

今天老大安排一个任务叫我获取手机中应用耗电排行(时间是前天晚上7点到第二天早上10点),所以在网上各种搜索,没想到这种资料还是很多的,发现了一个主要的类:PowerProfile,但是可以的是,这个类没有曝光给我们开发者,所以我们不能调用它 那怎么办呀?,还是有办法的,这个类是藏在:com.android.internal.os.PowerProfile com.android.internal.os.PowerProfile.PowerProfile这个类就是负责解析记录文件,我们可以创建一个

Android Stuido如何查看快捷键冲突?

看了这篇文章Android Studio如何查看资源或者函数在哪些类中被引用,知道了快捷键失效的原因,其中有一个原因就是快捷键冲突,那如何查看快捷键哪些项冲突了呢? Android Studio要查看当前快捷键和哪些快捷键有冲突很简单,打开设置页面,搜索Keymap,然后在快捷键页面输入你要查看的快捷键名称,这里不能输入快捷键哈,因为不支持直接用快捷键来搜索,这个估计是Android Studio的bug,那如何知道快捷键对应的功能名称是啥,请戳这:Android Studio如何修改快捷键.