wenju
wenju
  • 发布:2016-11-07 18:17
  • 更新:2017-04-15 16:09
  • 阅读:5876

android如何判断用户是否禁止使用相机(不是判断app是否配置相机权限)

分类:5+ SDK

android用原生代码判断用户是否禁止使用相机是:

/**  
	 * 返回true 表示可以使用 返回false表示不可以使用  
	 */  
	public boolean cameraIsCanUse() {  
		try {  
			Camera mCamera = Camera.open();  
			Camera.Parameters mParameters = mCamera.getParameters();  
			mCamera.setParameters(mParameters);  
			mCamera.release();  
		} catch (Exception e) {  
			e.printStackTrace();  
			return false;//抛异常说明用户禁用了相机  
		}  
		return true;  
	}

然后我就模仿写呗,但是不生效;

function cameraIsCanUse(){  
	try {  
		var Camera=plus.ios.importClass("android.hardware.Camera");  
		var mCamera = plus.android.invoke(Camera,"open");  
		var mParameters = plus.android.invoke(mCamera,"getParameters");  
		plus.android.invoke(mCamera,"setParameters",mParameters);  
		plus.android.invoke(mCamera,"release");  
	}catch(e){  
		return false;  
	}  
	return true;  
}

这个肯定是不会生效的 因为invoke根本不会抛异常

请问官方是否考虑提供这个方法??

因为用户自己禁用了相机也不知道,然后反馈说相机用不了,,
我是希望有提示,告诉用户在设置界面自己开启;

2016-11-07 18:17 负责人:无 分享
已邀请:
Runic

Runic

这个方法没有返回错误代码吗?

摄像头操作失败回调 CameraErrorCallback  
void onError( error ) {  
	// Handle camera error  
	var code = error.code; // 错误编码  
	var message = error.message; // 错误描述信息  
}

http://www.html5plus.org/doc/zh_cn/camera.html#plus.camera.CameraErrorCallback

  • wenju (作者)

    我的是扫二维码和条形码;不是拍照呢


    2016-11-08 12:09

  • 你猜猜我是谁

    小米5和华为P9都没有返回,请问谁办法吗?


    2017-03-02 11:35

  • wen如故i

    我也是小米,没有返回


    2017-04-17 11:41

  • wen如故i

    我拍照直接返回,也是返回code==11,我禁止拍照,也是返回code==11。二维码,楼主怎么样啦,搞好了没有


    2017-04-18 10:13

R劳斯

R劳斯 - Q:1685658203

我的项目使用的判断相机权限跟你的原生代码一样,唯一的区别是我把他封装成了原生插件,效果比使用H5实现要好

  • wenju (作者)

    原生是好些 要是我的项目也是原生集成H5我肯定也这么写了~~~~(>_<)~~~~


    2016-11-08 12:09

R劳斯

R劳斯 - Q:1685658203

你的项目是在线打包的。。。。?

  • wenju (作者)

    是呢 现在这个项目 不是集成的


    2016-11-09 15:22

你猜猜我是谁

你猜猜我是谁

检测Android相机是否被禁用,plus.camera.CameraErrorCallback,小米5和华为P9都没有返回信息,请问谁办法吗?

wen如故i

wen如故i

解决了木有,面临这个问题?求解决方法

该问题目前已经被锁定, 无法添加新回复