一般是第三方软件拦截,再次提示给用户,确认权限的,如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(); }