--- layout: page title: "Runtime Permissions" subtitle: "Permissions and Manifest setup" category: docs order: 8 date: 2018-12-20 20:03:03 --- `CameraView` needs two permissions: - `android.permission.CAMERA` : required for capturing pictures and videos - `android.permission.RECORD_AUDIO` : required for capturing videos with `Audio.ON` (the default) ### Declaration The library manifest file declares the `android.permission.CAMERA` permission, but not the audio one. This means that: - If you wish to record videos with `Audio.ON` (the default), you should also add `android.permission.RECORD_AUDIO` to required permissions ```xml ``` - If you want your app to be installed only on devices that have a camera, you should add: ```xml ``` If you don't request this feature, you can use `CameraUtils.hasCameras()` to detect if current device has cameras, and then start the camera view. ### Handling On Marshmallow+, the user must explicitly approve our permissions. You can - handle permissions yourself and then call `cameraView.start()` once they are acquired - or call `cameraView.start()` anyway: `CameraView` will present a permission request to the user based on whether they are needed or not with the current configuration. In the second case, you should restart the camera if you have a successful response from `onRequestPermissionResults()`.