MCPcopy Index your code
hub / github.com/RaphaelWoude/capacitor-native-settings

github.com/RaphaelWoude/capacitor-native-settings @v8.1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v8.1.0 ↗ · + Follow
29 symbols 46 edges 9 files 12 documented · 41% 1 cross-repo links
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Capacitor Native Settings

Capacitor plugin to open native settings screens for Android and iOS.

Plugin versions

Capacitor version Plugin version
v8 >= v8.0.0
v7 >= v7.0.1
v6 >= v6.0.0
v5 >= v5.0.0
v4 >= v4.0.0
v3 <= v2.0.1

Install

npm install capacitor-native-settings
npx cap sync

Example

import { NativeSettings, AndroidSettings, IOSSettings } from 'capacitor-native-settings';

/**
 * ⚠️ iOS limitation
 *
 * Apple officially supports opening only the app-specific settings screen.
 * Other options rely on undocumented URL schemes and may stop working
 * or cause App Store rejection.
 */
NativeSettings.open({
  optionAndroid: AndroidSettings.ApplicationDetails, 
  optionIOS: IOSSettings.App
})

NativeSettings.openAndroid({
  option: AndroidSettings.ApplicationDetails,
});

/**
 * ⚠️ iOS limitation
 *
 * Apple officially supports opening only the app-specific settings screen.
 * Other options rely on undocumented URL schemes and may stop working
 * or cause App Store rejection.
 */
NativeSettings.openIOS({
  option: IOSSettings.App,
});

API

Capacitor NativeSettings plugin interface.

Provides access to native Android and iOS system settings screens.

open(...)

open(options: PlatformOptions) => Promise<{ status: boolean; }>

Opens the specified settings option on the current platform.

Param Type Description
options PlatformOptions Platform-specific settings options.

Returns: Promise<{ status: boolean; }>


openAndroid(...)

openAndroid(options: AndroidOptions) => Promise<{ status: boolean; }>

Opens the specified Android settings screen.

Param Type Description
options AndroidOptions Android settings options.

Returns: Promise<{ status: boolean; }>


openIOS(...)

openIOS(options: IOSOptions) => Promise<{ status: boolean; }>

Opens the specified iOS settings screen.

Param Type Description
options IOSOptions iOS settings options.

Returns: Promise<{ status: boolean; }>


Interfaces

PlatformOptions

Platform-specific options.

Prop Type
optionAndroid AndroidSettings
optionIOS IOSSettings

AndroidOptions

Android-only options.

Prop Type
option AndroidSettings

IOSOptions

iOS-only options.

Prop Type
option IOSSettings

Enums

AndroidSettings

Members Value Description
Accessibility 'accessibility' Show settings for accessibility modules
Account 'account' Show add account screen for creating a new account
AirplaneMode 'airplane_mode' Show settings to allow entering/exiting airplane mode
Apn 'apn' Show settings to allow configuration of APNs
ApplicationDetails 'application_details' Show screen of details about a particular application
ApplicationDevelopment 'application_development' Show settings to allow configuration of application development-related settings
Application 'application' Show settings to allow configuration of application-related settings
AppNotification 'app_notification' Show settings to allow configuration of application-specific notifications
BatteryOptimization 'battery_optimization' Show screen for controlling which apps can ignore battery optimizations
Bluetooth 'bluetooth' Show settings to allow configuration of Bluetooth
Captioning 'captioning' Show settings for video captioning
Cast 'cast' Show settings to allow configuration of cast endpoints
DataRoaming 'data_roaming' Show settings for selection of 2G/3G/4G
Date 'date' Show settings to allow configuration of date and time
Display 'display' Show settings to allow configuration of display
Dream 'dream' Show Daydream settings
Home 'home' Show Home selection settings
Keyboard 'keyboard' Show settings to configure input methods, in particular allowing the user to enable input methods
KeyboardSubType 'keyboard_subtype' Show settings to enable/disable input method subtypes
Locale 'locale' Show settings to allow configuration of locale
Location 'location' Show settings to allow configuration of current location sources
ManageApplications 'manage_applications' Show settings to manage installed applications
ManageAllApplications 'manage_all_applications' Show settings to manage all applications
MemoryCard 'memory_card' Show settings for memory card storage
Network 'network' Show settings for selecting the network operator
NfcSharing 'nfcsharing' Show NFC Sharing settings
NfcPayment 'nfc_payment' Show NFC Tap & Pay settings
NfcSettings 'nfc_settings' Show NFC settings
Print 'print' Show the top level print settings
Privacy 'privacy' Show settings to allow configuration of privacy options
QuickLaunch 'quick_launch' Show settings to allow configuration of quick launch shortcuts
Search 'search' Show settings for global search
Security 'security' Show settings to allow configuration of security and location privacy
Settings 'settings' Show system settings
ShowRegulatoryInfo 'show_regulatory_info' Show the regulatory information screen for the device
Sound 'sound' Show settings to a llow configuration of sound and volume
Storage 'storage' Show settings for internal storage
Sync 'sync' Show settings to allow configuration of sync settings
TextToSpeech 'text_to_speech' Show settings for configuring Text-to-Speech (TTS) output
Usage

Extension points exported contracts — how you extend this code

NativeSettingsPlugin (Interface)
(no doc) [2 implementers]
src/definitions.ts
PlatformOptions (Interface)
(no doc)
src/definitions.ts
AndroidOptions (Interface)
(no doc)
src/definitions.ts
IOSOptions (Interface)
(no doc)
src/definitions.ts

Core symbols most depended-on inside this repo

openInternal
called by 2
android/src/main/java/nl/raphael/settings/NativeSettingsPlugin.java
openOption
called by 1
android/src/main/java/nl/raphael/settings/NativeSettingsPlugin.java
getAction
called by 1
android/src/main/java/nl/raphael/settings/AndroidSettings.java
open
called by 0
android/src/main/java/nl/raphael/settings/NativeSettingsPlugin.java
openAndroid
called by 0
android/src/main/java/nl/raphael/settings/NativeSettingsPlugin.java
activityResult
called by 0
android/src/main/java/nl/raphael/settings/NativeSettingsPlugin.java
CustomAndroidSettings
called by 0
android/src/main/java/nl/raphael/settings/CustomAndroidSettings.java
AndroidSettings
called by 0
android/src/main/java/nl/raphael/settings/AndroidSettings.java

Shape

Method 16
Class 6
Interface 4
Enum 3

Languages

Java52%
TypeScript48%

Modules by API surface

src/definitions.ts9 symbols
android/src/main/java/nl/raphael/settings/NativeSettingsPlugin.java6 symbols
src/web.ts5 symbols
android/src/main/java/nl/raphael/settings/AndroidSettings.java3 symbols
android/src/test/java/com/getcapacitor/ExampleUnitTest.java2 symbols
android/src/main/java/nl/raphael/settings/CustomAndroidSettings.java2 symbols
android/src/androidTest/java/com/getcapacitor/android/ExampleInstrumentedTest.java2 symbols

Used by 1 indexed graphs manifest dependencies, hub-wide

For agents

$ claude mcp add capacitor-native-settings \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact