The Device Security Detect plugin is designed to provide comprehensive device security detection capabilities for Capacitor-based applications. It aims to detect the device has been rooted (Android) or jailbroken (iOS). By using this plugin, developers ca
npm install @capacitor-community/device-security-detect
@capacitor-community/device-security-detect
The Device Security Detect plugin is designed to provide comprehensive device security detection capabilities for Capacitor-based applications. It aims to detect the device has been rooted (Android) or jailbroken (iOS). By using this plugin, developers can enhance the security of their applications and take appropriate actions based on the detected security status.
- Maintainers
- Plugin versions
- Supported Platforms
- Installation
- API
- Usage
| Maintainer | GitHub | Active |
| ---------- | ----------------------------------- | ------ |
| 4ooper | 4ooper | yes |
| ryaa | ryaa | yes |
| Capacitor version | Plugin version |
| ----------------- | -------------- |
| 7.x | 7.x |
| 6.x | 6.x |
- iOS
- Android
``bash`
npm install @capacitor-community/device-security-detect
npx cap sync
Using yarn:
`bash`
yarn add @capacitor-community/device-security-detect
Sync native files:
`bash`
npx cap sync
* isJailBreakOrRooted()
* pinCheck()
`typescript`
isJailBreakOrRooted() => Promise<{ value: boolean; }>
Detect if the device has been rooted (Android) or jailbroken (iOS).
This method provides a boolean value indicating whether the device
has been tampered with (e.g., by rooting or jailbreaking).
Returns: Promise<{ value: boolean; }>
Since: 6.0.0
--------------------
`typescript`
pinCheck() => Promise<{ value: boolean; }>
Check if a PIN, password, or biometric authentication is enabled on the device.
This method checks whether the user has set up any kind of secure lock mechanism
(e.g., PIN, password, or biometric authentication) on their mobile device.
Returns: Promise<{ value: boolean; }>
Since: 6.0.2
--------------------
`typescript
import { DeviceSecurityDetect } from '@capacitor-community/device-security-detect';
async function checkRootStatus() {
const { value } = await DeviceSecurityDetect.isJailBreakOrRooted();
if (value) {
console.warn('The device is rooted or jailbroken!');
} else {
console.log('The device is secure.');
}
}
`
`typescript
import { DeviceSecurityDetect } from '@capacitor-community/device-security-detect';
async function checkPinStatus() {
const { value } = await DeviceSecurityDetect.pinCheck();
if (value) {
console.log('A secure lock mechanism is enabled on the device.');
} else {
console.warn('No secure lock mechanism is detected.');
}
}
`
`typescript
import { DeviceSecurityDetect } from '@capacitor-community/device-security-detect';
const { value } = await DeviceSecurityDetect.isJailBreakOrRooted();
async function checkDeviceSecurity() {
try {
const rootStatus = await DeviceSecurityDetect.isJailBreakOrRooted();
console.log(Root/Jailbreak status: ${rootStatus.value ? 'Yes' : 'No'});
const pinStatus = await DeviceSecurityDetect.pinCheck();
console.log(Secure lock enabled: ${pinStatus.value ? 'Yes' : 'No'});
} catch (error) {
console.error('Error checking device security:', error);
}
}
checkDeviceSecurity();
``
or please see example-app for a complete example.
Use this plugin to enhance your application's security and respond appropriately to potential risks.