android按home键再启动程序camera黑屏屏蔽home键
更新:现在找到解决按home键再启动程序camera黑屏的方法了:需要将SurfaceView加载到FrameLayout中的代码写在onResume中
@Overrideprotected void onResume() {// TODO Auto-generated method stubsuper.onResume();if (camera == null){camera = getCameraInstance();}//必须放在onResume中,不然会出现Home键之后,再回到该APP,黑屏mySurfaceView = new MySurfaceView(getApplicationContext(), camera);FrameLayout preview = (FrameLayout) findViewById(R.id.camera_preview);preview.addView(mySurfaceView);}
https://www.2cto.com/kf/201408/329957.html
MainActivity有一个按钮,点按钮进入到CameraActivity,CameraActivity里有一个Camera的预览,调用的系统相机。CameraActivity类implements了SurfaceHolder.Callback, Camera.PreviewCallback。现在的问题是在CameraActivity界面Camera正常预览时,点击手机home键后再点应用图标进入应用,Camera就黑屏了。点手机返回键返回MainActivity再进入CameraActivity时Camera预览就正常了。
开启camera预览的方法:
private void preview() throws IOException {if (hasFrontFacingCamera()) {//如果有前置摄像头camera = Camera.open(1);camera.setDisplayOrientation(90);} else {camera = Camera.open(0);camera.setDisplayOrientation(270);}Camera.Parameters params = camera.getParameters();List<Camera.Size> sizes = params.getSupportedPreviewSizes();Camera.Size selected = sizes.get(1);width = selected.width;height = selected.height;params.setPreviewSize(640, 480);
// params.setPictureFormat(PixelFormat.RGB_565);
// params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);
// params.setPreviewSize(width, height);camera.setParameters(params);camera.setPreviewDisplay(holder);camera.startPreview();}
这个问题貌似是因为按home键后Activity中的camera被release掉了,然后再点应用图标进入应用,camera没有启动。启动camera的方法preview()是写在了onCreate方法里。
刚开始想的是处理Activity的生命周期的方法,onPause时释放Camera,onRestart或onResume时调用preview()重新启动Camera。但是报错“app passed NULL surface”。查找了资料,看到这个博客Android调用相机预览黑屏app passed NULL surface解决,试了里面的方法,不起作用,报错。没能解决。放弃。
后来又试了在CameraActivity中屏蔽home键,这样就不能退回桌面了。自己写了onKeyDown方法屏蔽home键,发现不起作用。然后就上网搜屏蔽home键的方法,发现网上说的方法都无效,包括所谓的4.0以后能用的方法,包括GitHub上别人提供的第三方工具。据说谷歌为了安全,把屏蔽home键的方法写在了framework层而不再是application层,除非修改framework层的代码,否则屏蔽不了home键。搜了很多资料,发现这个有一点道理:Android 开发锁屏屏蔽Home键、原生锁屏界面,但是没源码,这个功能对我来说又不是必须的,就没好好搞。
再后来,想了个偷懒的办法。因为在我们这个APP中,CameraActivity界面中按home键基本是不会有的操作,属于非正常操作,所以我就想如果按了home键,那就把当前页销毁,返回上一页面,重新进入CameraActivity。于是在当前页失去焦点时finnish掉当前页。
@Overrideprotected void onPause() {super.onPause();finish();}
经测试,可以使用。
类似博客:Android 休眠状态对Camera预览的影响
android按home键再启动程序camera黑屏屏蔽home键相关推荐
- 电脑黑屏按什么键恢复?只需要3个键就可以解决黑屏
今天和大家聊一聊电脑黑屏这个问题.相信大家都遇到过电脑黑屏,但是却不知道该如何解决,今天就来给大家分享一些处理方法.如果是电脑黑屏的话,一般情况下,只需要三个键就可以解决问题,电脑黑屏按什么键恢复?一 ...
- 电脑版微信聊天记录和小程序视频播放黑屏,但有声音,qq和其浏览器视频播放正常。如何解决?
问题描述: 电脑版微信聊天记录和小程序视频播放黑屏,但有声音,而且截屏时会先显现出画面: qq和其浏览器视频播放正常. 原因:显卡驱动出错 解决办法:更新显卡驱动或者卸载重新安装显卡驱动 注意:我遇到 ...
- 解决CUDA程序的黑屏恢复问题
解决CUDA程序的黑屏恢复问题 参考文章: (1)解决CUDA程序的黑屏恢复问题 (2)https://www.cnblogs.com/javado/p/5559921.html 备忘一下.
- excel换行按什么键_电脑黑屏按什么键恢复 电脑黑屏的原因和恢复方法
电脑黑屏是日常生活中常见的故障,如果遇到黑屏的情况,可能会有以下几种可能: 一.电脑部件没有安插好 如果发现电脑黑屏,一定要检查一下电脑部件是否安插好,是否接入到主机接口,检查一下显卡与主板I/O插槽 ...
- Win7电脑黑屏按什么键恢复
我们在使用win7操作系统的时候,有的情况下可能会出现电脑黑屏的情况,那么对于这个问题该如何解决呢?又或者说可以按什么键恢复呢?下面来看看win7系统电脑黑屏按哪三个键就能解决. Ghost Win7 ...
- Android M系统无响应一直卡住黑屏
问题描述 在设置中操作,语音助手调用AudioRecord某个方法,出现无响应,按等待或确定后均进入黑屏无法恢复 背景知识 Android M上audio.video.camera都在mediaser ...
- android 6 videoview,Android VideoView错误(1,16)并显示黑屏
我有一个带有VideoView的应用程序,它从内部存储器播放mp4文件(我的包文件目录) 在一些三星Epic Touch 4g(Galaxy SII)设备上,而不是显示的视频,屏幕是完全黑色的.我的应 ...
- 如何解决计算机黑屏问题,电脑黑屏怎么处理(三个键教您解决黑屏问题)
电脑黑屏按下的三[文]个键是Ctrl+[章]Alt+Dele[来]te.一般都能正[自]常打开电脑,这是[小]可以直接快速进入[兵]电脑的功能! 电脑黑屏了可以按Ctrl+Alt+Delete三个键, ...
- C语言程序运行黑屏,Win7开机黑屏代码0XC000000F的原因及解决方法
原标题:Win7开机黑屏代码0XC000000F的原因及解决方法 Win7开机黑屏出现0XC000000F代码是怎么回事?最近有用户朋友的电脑开机就遇到了这个问题,向云骑士求助.今天云骑士把解决该问题 ...
最新文章
- cannot import name 'etree' from 'lxml'
- SQL字符串处理函数大全
- P2679-子串【dp】
- 配置linux系统ip,Linux系统IP地址配置
- 推荐系统最新研究进展
- NSURLProtocol 拦截 NSURLSession 请求时body丢失问题解决方案探讨
- 华为云技术开放日(第三季)话题介绍和直播群入口
- Spring -- 入门,装备集合,自动装配,分散装配,自定义编辑器
- bootstrap课程4 bootstrap的css样式有哪些内容需要注意
- warning: malformed '#pragma pack(pop[, id])' - ignored
- 服务器各项指标的图形化显示
- 437.路径总和III (力扣leetcode) 博主可答疑该问题
- 教你在官网如何下载jdk
- pygame详细安装教程
- 【HUSTOJ】1048: 字符图形4-星号正三角
- 常用照片尺寸与像素对照表
- SPFA算法模板(刘汝佳版)--Wormholes POJ - 3259
- 视频演示 | 功能新增 | 增强版在线LEFSe分析和可视化鉴定标志性基因或物种
- 软件建模与分析--共享单车管理系统
- 特朗普对五角大楼云计算合同表示担忧