在做Android开发过程中,兼容问题一直都是安卓攻城狮们的常见的一个问题,各种手机品牌的兼容。还有API版本高低的兼容。

这里主要针对Android相机开发的兼容问题之 Fail to connect camera service错误;刚遇到这个问题的时候,在网上看了好多资料,大部分都是说的这四种元(都是容易忽略的东西):

1、手机上有安装安全过滤软件,因为Camera属于较为敏感权限,所有有些手机安全软件会自动拒绝Camera的打开操作,就会出现connect fail 错误。

解决办法:在手机安全软件中,降低Camera的安全级别,或者把自己的APP添加到白名单中。

个人评价:对于用户还可以实施。对于安卓攻城狮来说~然而并没有什么卵用。

2、AndroidManifest.xml文件里面没有添加Camera的权限。没啥可说的,添加上就可以了:

3、之前打开过camera,没有释放。释放掉:

camera.stopPreview();

camera.release();

camera = null;

4、内容占用过多,可能导致了自己应用可分配的内存不足。这种场景一般是因为你对摄像头取得的每一帧数据都进行了额外的处理,随着处理的次数越来越多,如果没有及时销毁掉前面的对象,就会出现这个错误。

解决办法:把之前的对象释放掉。

我遇到的问题,这四个办法都没有解决;问题属于第二种情况,但是我的AndroidManifest.xml文件里面添加了权限的申请,这是为什么呢?因为:

针对android 6.0(API 23)及以前的版本,在AndroidManifest.xml文件里面添加权限就可以用了,但是对于Android 6.0以后的版本,系统允许用户单独管理应用的某个权限,打开或者关闭。我遇到的问题就是这个API版本兼容的问题。

解决办法:在进行相机操作之前,检测相机权限,

if(ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {

//申请WRITE_EXTERNAL_STORAGE权限

ActivityCompat.requestPermissions(this,newString[]{Manifest.permission.CAMERA},1);}

if里面是检测是否用Camera权限,如果没有则去申请。弹出对话框,用户来确认打开与否。

android相机权限xml,Android相机权限检测兼容问题相关推荐

  1. android xpath解析xml,Android 中处理 XML 的四种方式-DOM

    Android 中处理 XML 的几种方式连载中,我们就不介绍合成 XML 了,因为合成 XML 可以直接拼接字符串,虽然看起很不高大上,但却很有效.我们主要介绍如何取 XML 中的值. 适用 DOM ...

  2. android绿豆通讯录xml,Android 数据库(SQLite)【简介、创建、使用(增删改查、事务、实战演练)、数据显示控件(ListView、Adapter、实战演练)】...

    目   录 (壹)SQLite数据库简介 (贰)数据库的创建 (叁)数据库的使用 3.1.SQlite的基本操作 3.1.1.添加数据 3.1.2.修改数据 3.1.3.查询数据 3.1.4.删除数据 ...

  3. android 自定义view xml ,Android实现在xml文件中引用自定义View的方法分析

    本文实例讲述了Android实现在xml文件中引用自定义View的方法.分享给大家供大家参考,具体如下: 在xml中引用自定义view 方法一: android:layout_width=" ...

  4. android开发时钟xml,android模拟时钟和数字时钟的例子

    android.widget.AnalogClock和android.widget.DigitalClock类提供了显示模拟和数字时钟的功能. Android模拟和数字时钟用于在Android应用程序 ...

  5. android绿豆通讯录xml,Android 绿豆通讯录【SQLite数据库---数据库(增删改查、展示数据)】...

    前情提要:Android 数据库(SQLite) [简介.创建.使用(增删改查.事务.实战演练).数据显示控件(ListView.Adapter.实战演练-绿豆通讯录)] https://blog.c ...

  6. android 图片叠加xml,Android实现图片叠加效果的两种方法

    本文实例讲述了Android实现图片叠加效果的两种方法.,具体如下: 效果图: 第一种: 第二种: 第一种是通过canvas画出来的效果: public void first(View v) { // ...

  7. android应用apn.xml,android之APN

    APN全称是Access Point Name,中文即接入点,是通过手机上网时必须配置的一个参数,它决定了手机通过哪种接入方式来访问网络. android系统把所有的APN都保存在数据库中,数据库绝对 ...

  8. 在Android上使用XML

    Android钻石迷情游戏源码 http://www.eoeandroid.com/thread-205318-1-1.html Android平台DuckGame小游戏 http://www.eoe ...

  9. android 属性动画伸缩,Android动画开发——Animation动画效果详解

    在Android中,分别可以在xml中定义Animation,也可以在程序代码中定义. 动画类型Android的animation由四种类型组成 XML中alpha渐变透明度动画效果 scale渐变尺 ...

最新文章

  1. 搜索引擎名字引发的思考
  2. 案例 | 易快报:解放“客户成功”的背后故事
  3. Delphi中DLL或Package窗体载入与显示
  4. redis module模块简单使用
  5. Rumor CodeForces - 893C(并查集)
  6. 各种编译环境中如何为C++添加命令行参数(Command-line parameter)
  7. 关于IEnumeratorT泛型枚举器 和 IEnumerableT
  8. Python学习(24)--面向对象编程1
  9. 如何写出一份好的解决方案
  10. 【180630】VC++画面炫丽的2D 太空射击游戏源码
  11. 一个生肖一首诗,看看你是哪一首?
  12. jp.ne.so_net.ga2.no_ji.jcom.JComException: createInstance() failed HRESULT=0x800401F3L
  13. PHP获取上周一,获取指定日期的上周日期,上周一
  14. esp32 支持 sd卡 micropython 文件系统_ESP32/ESP8266 MicroPython教程:将文件上传到文件系统...
  15. 博客备份系统之一:PDF,Word,TXT文件操作类
  16. 【数学】一元函数积分学(宇哥笔记)
  17. 从零开始写高性能的人脸识别服务器(三)
  18. Some weights of the model checkpoint at bert_pretrain were not used when initializing BertModel
  19. Python和R的GUI图形化编程与用户界面
  20. 玩vr游戏的计算机配置要求,4款电脑横向评测: 寻找最适合玩VR的PC配置

热门文章

  1. 港科夜闻|香港科技大学国际管理理学硕士(MIMT)课程连续第二年跻身全球管理教育联盟 (CEMS) 2021年度最佳学院前三甲...
  2. nyoj 1328 派队方案
  3. 一、YouTube-8M 初探(视频与音频分类)
  4. QT编程错误解决——error: no matching function for call to
  5. Linux常用快捷键、文件管理和查询
  6. 用matlab对相机进行标定获取相机内参
  7. 盘点2018上半年最受欢迎的前端开发!
  8. SATA硬盘性能测试软件,趣味测试:实测SATA线对硬盘性能的影响
  9. 网址短连接 short url
  10. SQL中日期函数计算月初/月底/季末/年初/年底