cordova-plugin-ios-devmode
v1.0.3
Published
Check iOS device state: Normal / Developer Mode / Jailbreak
Maintainers
Readme
Cordova Plugin: cordova-plugin-ios-devmode
Detect iOS device state: Normal, Developer Mode, Debugger, or Jailbroken.
Installation
Using local folder
cordova plugin add cordova-plugin-ios-devmodeHow to Use
In Ionic / Angular
- Declare the plugin in your TypeScript file:
declare var cordova-plugin-ios-devmode: any;- Call the
checkStatefunction:
import { Component } from '@angular/core';
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
})
export class HomePage {
state: string = '';
ionViewDidEnter() {
cordova-plugin-ios-devmode.checkState(
(res: string) => {
this.state = res;
console.log("Device State:", res);
// Possible values:
// "NormalUser" -> Installed from App Store, no dev mode
// "DeveloperMode_Debugger" -> App Store + Debugger attached
// "DeveloperMode_Sideloaded" -> Sideloaded app, not from App Store
// "Jailbroken" -> Device is jailbroken
},
(err: any) => {
console.error("cordova-plugin-ios-devmode error:", err);
}
);
}
}- Use the state anywhere in your app:
if(this.state === "Jailbroken") {
alert("Warning: Your device is jailbroken!");
} else if(this.state.includes("DeveloperMode")) {
console.log("Developer mode is active");
}Cordova Example (Plain JS)
<script type="text/javascript">
document.addEventListener('deviceready', function() {
cordova-plugin-ios-devmode.checkState(
function(result) {
console.log("Device state:", result);
},
function(error) {
console.error(error);
}
);
}, false);
</script>iOS Support
- Tested on iOS 16+
- Requires Cordova iOS platform 6+
How it Works
- Debugger attached → checks if process is being traced (
P_TRACED) - App Store receipt → distinguishes App Store vs sideloaded apps
- Jailbreak checks → looks for common jailbreak indicators like
/Applications/Cydia.app,/bin/bash,/usr/sbin/sshd
License
MIT License
Steps After Adding the Plugin
- Make sure the plugin is installed successfully:
cordova plugin ls- Build your iOS project:
ionic cordova build ios- Run on a device or simulator:
ionic cordova run ios --deviceVerify plugin works by checking console logs for device state.
Use the
statevariable in your app logic to handle developer mode, debugger, or jailbreak alerts.
