关于android的问题:我的android应用程序需要使用系统摄像头功能。它可以很好地工作,但是当它在运行时lenovo k900
,此手机具有的功能禁止某些应用程序使用摄像头或其他权限。所以我需要知道如何判断应用程序是否可以使用相机。
我很高兴终于解决了这个问题。
首先,我判断系统摄像机是否可以使用,如果没有提示,请使用此方法
private Camera getCameraInstance() {
try {
camera = Camera.open(); // attempt to get a Camera instance
} catch (Exception e) {
LogUtil.log(LogUtil.TAG_ERROR, e.toString());
DialogUtil.showToast(getString(R.string.camera_can_not_use));
finish();
}
return camera; // returns null if camera is unavailable
}
然后,在调用系统摄像机之前,调用此方法进行检查。如果此方法返回的值不为null。请释放相机。
private void doTakePhoto() {
if (getCameraInstance() != null) {
camera.release();
Intent intent = new Intent();
intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);
intent.addCategory(Intent.CATEGORY_DEFAULT);
startActivityForResult(intent, CAMERA_REQUEST_CODE);
}
}
现在,当系统禁止您的应用使用相机时,您可以给用户一个友好的提示
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句