一般是第三方软件拦截,再次提示给用户,确认权限的,如360等。
(PS 没有设置权限的app 是会崩溃的 ,而是不是弹出权限确认,因为你都没设置这个权限)
看了网上很多,确切说没有一个适合我的。
其实用户是否在弹出的 权限确认框 点了 允许 ,我们更期待是点 这个按钮 。
否则下面的很多流程走不了,甚至会报错 。
解决方案: 居然是最最常用的 try...catch 就可以了。是不是有种返璞归真,无招胜有招的感觉呢。
@Override
protected void onResume()
{
super.onResume();
try {
mCamera = CameraUtils.getCameraInstance(mCameraCurrentlyLocked);
mPreview.setCamera(mCamera);
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(BaseCameraActivity.this,R.string.cam_error_permission,1000).show();
finish();
}
//setDisplayOrientation();
}