---
name: "openSystemSettingPage"
mode: "kit"
versionRequirements:
  - { name: "BizKit", version: "3.0.0" }
  - { name: "@ray-js/ray", version: "1.5.19" }
platform:
  - "iOS"
  - "Android"
async: true
title: "openSystemSettingPage"
---

## openSystemSettingPage

> [VERSION] BizKit >= 3.0.0 | @ray-js/ray >= 1.5.19

> [PLATFORM] iOS, Android

> ⚡ **Supports Promise** — Returns a Promise when success / fail / complete callbacks are omitted.

### Description

Note: Due to review/security risks, on iOS calling this method only opens the Settings page for the current app and no longer supports the following scopes. Depending on the scope value, it opens the corresponding system Settings screen: "Settings" -> device Settings home; "Settings-Bluetooth" -> Bluetooth settings; "Settings-WiFi" -> WiFi settings; "Settings-Location" -> Location settings; "Settings-Notification" -> Notification settings

### Parameters

| Property | Type | Required | Default | Since | Description |
| --- | --- | --- | --- | --- | --- |
| `scope` | `string` | Yes | - | `3.0.0` | System navigation — settings item names "Settings" -> device Settings home "Settings-Bluetooth" -> device Bluetooth settings "Settings-WiFi" -> device WiFi settings "Settings-Location" -> device Location settings "Settings-Notification" -> device Notification settings System navigation — app settings item names "App-Settings" -> App settings page "App-Settings-Permission" -> App permission settings (Android only) "App-Settings-Notification" -> App notification settings (Android only) |
| `requestCode` | `number` | No | - | `3.0.0` | Request code (Android only) |
| `complete` | `() => void` | No | - | - | Completion callback (executed on both success and failure) |
| `success` | `() => void` | No | - | - | Callback on successful API call |
| `fail` | `(params: Object) => void` ↓see below | No | - | - | Failure callback |

#### fail callback parameters

| Property | Type | Description |
| --- | --- | --- |
| `errorMsg` | `string` | Error message |
| `errorCode` | `string \| number` | Error code |
| `innerError` | `Object` | Error extension |

##### fail(params).innerError properties

| Property | Type | Description |
| --- | --- | --- |
| `errorCode` | `string \| number` | Error extension code |
| `errorMsg` | `string` | Error extension message |


### Examples

#### Demo

```tsx
import { openSystemSettingPage } from '@ray-js/ray'

openSystemSettingPage({
  scope: "xx",
  success: data => {
    console.log(data);
  },
  fail: error => {
    console.error(error);
  },
});
```
