# MoveDeviceStatus

[MoveDeviceStatus](/move-platform/sdk/models/movedevicestatus.md) represents the current device's system permissions (for [Android](/move-platform/sdk/appendix/android/permission-handling.md) / [iOS](/move-platform/sdk/appendix/ios/permission-handling.md)) and services status.

{% tabs %}
{% tab title="Android" %}

```kotlin
MoveDeviceStatus {  
    isLocationGranted: Boolean
    isBackgroundPermissionGranted: Boolean
    isPreciseLocationGranted: Boolean
    isMotionGranted: Boolean
    isOverlayGranted: Boolean
    isPhoneGranted: Boolean
    isGyroPresent: Boolean
    isAccelerometerPresent: Boolean
}
```

{% endtab %}

{% tab title="iOS" %}

```swift
struct MoveDeviceStatus {   
    var isLocationGranted: Bool
    var isPreciseLocationGranted: Bool
    var isMotionGranted: Bool
    var isGyroPresent: Bool
    var isAccelerometerPresent: Bool
    var isBackgroundPermissionGranted: Bool
    var isDistractionDetectionPossible: Bool
    var isDrivingBehaviourPossible: Bool
}
```

{% endtab %}
{% endtabs %}

<table data-header-hidden><thead><tr><th width="295">MoveDeviceStatus</th><th width="84"></th><th width="95"></th><th></th></tr></thead><tbody><tr><td><strong>MoveDeviceStatus</strong></td><td><strong>OS</strong></td><td><strong>Type</strong></td><td></td></tr><tr><td>isLocationGranted</td><td>A/iOS</td><td>Boolean</td><td>Indicates if system's location permission is granted.</td></tr><tr><td>isPreciseLocationGranted</td><td>A/iOS</td><td>Boolean</td><td>Indicates if location precision permission is granted (iOS 14), resp. If the location accuracy is high (Android / Google Play Services).</td></tr><tr><td>isMotionGranted</td><td>A/iOS</td><td>Boolean</td><td>Indicates if system's motion(iOS)/activity recognition (Android) permission is granted.</td></tr><tr><td>isGyroPresent</td><td>A/iOS</td><td>Boolean</td><td>Indicates if the device's gyroscope sensor is available. </td></tr><tr><td>isAccelerometerPresent</td><td>A/iOS</td><td>Boolean</td><td>Indicates if the device's accelerometer sensor is available. </td></tr><tr><td>isBackgroundPermissionGranted</td><td>A/iOS</td><td>Boolean</td><td>Indicates if system's background location permission is granted.</td></tr><tr><td>isOverlayGranted</td><td>A</td><td>Boolean</td><td>Indicates if system's overlay permission is granted.</td></tr><tr><td>isDistractionDetectionPossible</td><td>iOS</td><td>Boolean</td><td>Indicates if all the permissions required for the Distraction detection service are granted. Check <a href="/pages/-MaaWY9OqkZbnWjtjqNT">Config</a> for more info.</td></tr><tr><td>isDrivingBehaviourPossible</td><td>iOS</td><td>Boolean</td><td>Indicates if all the permissions required for the Driving behaviour service are granted. Check <a href="/pages/-MaaWY9OqkZbnWjtjqNT">Config</a> for more info.</td></tr></tbody></table>

| **MoveDeviceStatus related**                                                                                                                                                |                                                                                                   |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| getDeviceStatus() (in [Android](/move-platform/sdk/api-interface/android/services.md#get-device-status) / [iOS](/move-platform/sdk/api-interface/ios.md#get-device-status)) | Gets the current [MoveDeviceStatus](/move-platform/sdk/models/movedevicestatus.md)*.*             |
| MoveDeviceStatusCallback (iOS only)                                                                                                                                         | [Device Status Callback](/move-platform/sdk/models/listeners-callbacks.md#device-status-callback) |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.movesdk.com/move-platform/sdk/models/movedevicestatus.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
