# Permission

> Structure describing a permission that requires user authorization.

## Definition

* **Type:** Struct
* **Namespace:** [UnityEngine.Android](/engine/6000.6/script-reference/unityengine/android.md)
* **Assembly:** UnityEngine.AndroidJNIModule

```csharp
public struct Permission
```

## Static Fields

| Value                                                                                                          | Description                                                                                                                   |
| -------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| [Camera](/engine/6000.6/script-reference/unityengine/android/permission/camera.md)                             | Used when requesting permission or checking if permission has been granted to use the camera.                                 |
| [CoarseLocation](/engine/6000.6/script-reference/unityengine/android/permission/coarselocation.md)             | Used when requesting permission or checking if permission has been granted to use the users location with coarse granularity. |
| [ExternalStorageRead](/engine/6000.6/script-reference/unityengine/android/permission/externalstorageread.md)   | Used when requesting permission or checking if permission has been granted to read from external storage such as a SD card.   |
| [ExternalStorageWrite](/engine/6000.6/script-reference/unityengine/android/permission/externalstoragewrite.md) | Used when requesting permission or checking if permission has been granted to write to external storage such as a SD card.    |
| [FineLocation](/engine/6000.6/script-reference/unityengine/android/permission/finelocation.md)                 | Used when requesting permission or checking if permission has been granted to use the users location with high precision.     |
| [Microphone](/engine/6000.6/script-reference/unityengine/android/permission/microphone.md)                     | Used when requesting permission or checking if permission has been granted to use the microphone.                             |

## Static Methods

| Method                                                                                                                                         | Description                                                                                               |
| ---------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| [HasUserAuthorizedPermission](/engine/6000.6/script-reference/unityengine/android/permission/hasuserauthorizedpermission.md)                   | Check if the user has granted access to a device resource or information that requires authorization.     |
| [RequestUserPermission](/engine/6000.6/script-reference/unityengine/android/permission/requestuserpermission.md)                               | Request the user to grant access to a device resource or information that requires authorization.         |
| [RequestUserPermissions](/engine/6000.6/script-reference/unityengine/android/permission/requestuserpermissions.md)                             | Request the user to grant access to multiple device resources or information that requires authorization. |
| [ShouldShowRequestPermissionRationale](/engine/6000.6/script-reference/unityengine/android/permission/shouldshowrequestpermissionrationale.md) | Check whether to display the UI explaining the reason for permission before requesting it.                |
