cordova-plugin-storage-encryption-status v1.0.0
Cordova plugin to determine the encryption status of device's storage
Index
Supported Platforms
- iOS
- Android
Installation
$ cordova plugin add cordova-plugin-storage-encryption-statusUsage
const storageEncryptionStatus = cordova.plugins.storageEncryptionStatus;
storageEncryptionStatus.isEncrypted().then((isEncrypted) => {
console.log(`isEncrypted: ${isEncrypted}`);
// => isEncrypted: true
});
storageEncryptionStatus.getEncryptionStatus().then((encryptionStatus) => {
console.log(`encryptionStatus: ${encryptionStatus}`);
// => encryptionStatus: ENCRYPTION_STATUS_ACTIVE_PER_USER
});API
storageEncryptionStatus.isEncrypted()
Whether device's storage is encrypted. Returns a Promise that fulfills with the device's encryption status as a boolean.
storageEncryptionStatus.getEncryptionStatus()
Determines the device's detailed encryption status. Returns a Promise that fulfills with the device's encryption status as one the encryption status enum values (see storageEncryptionStatus.statusValues).
storageEncryptionStatus.statusValues
An a lookup hashmap (as a plain JS object) for all the possible values that can be returned by StorageEncryptionStatus.getEncryptionStatus().
See DevicePolicyManager docs for more information on the meaning of enum values on Android.
On iOS, only the values 'ENCRYPTION_STATUS_UNSUPPORTED', 'ENCRYPTION_STATUS_INACTIVE', and 'ENCRYPTION_STATUS_ACTIVE_PER_USER' are used.
ENCRYPTION_STATUS_UNSUPPORTED: "ENCRYPTION_STATUS_UNSUPPORTED"
Indicates that encryption is not supported.
ENCRYPTION_STATUS_INACTIVE: "ENCRYPTION_STATUS_INACTIVE"
Indicates that encryption is supported, but is not currently active.
ENCRYPTION_STATUS_ACTIVATING: "ENCRYPTION_STATUS_ACTIVATING"
Indicates that encryption is not currently active, but is currently being activated.
ENCRYPTION_STATUS_ACTIVE: "ENCRYPTION_STATUS_ACTIVE"
Indicates that encryption is active.
ENCRYPTION_STATUS_ACTIVE_DEFAULT_KEY: "ENCRYPTION_STATUS_ACTIVE_DEFAULT_KEY"
Indicates that encryption is active, but an encryption key has not been set by the user.
ENCRYPTION_STATUS_ACTIVE_PER_USER: "ENCRYPTION_STATUS_ACTIVE_PER_USER"
Indicates that encryption is active and the encryption key is tied to the user or profile.
Tested Devices
- Nexus 5 (Android 6, 7, 8)
- Moto G7 Plus (Android 10)
- Huawei P20 lite (Android 8)
- Sony Xperia Z1 (Android 5.1)
- iPhone X (iOS 13.3.1, iOS 13.6.1)
- iPhone 6 (iOS 12.4.2)
5 years ago