v2.3.0 / 2025-12-03 (Breaking Change)
This release is a breaking change and introduces AES-256 encryption for enhanced security.
All Platforms
- Feature: Added AES-256 encryption functionality. To upgrade an existing encrypted MMKV instance to AES-256, first load it using the old key. Then, call the
reKey()method with the new key and set theaes256parameter totrue, e.g.,reKey(newKey, aes256=true). After this, you should use the new key for all future loads of this instance. - Fix: Resolved a crash that occurred when loading an empty file in
ReadOnlymode. - Fix: Added protection against the
weakly_canonical()exception caused by an invalid file path. - Fix: Fixed an issue where the file size could change during multi-process loading.
- Fix: Corrected a bug where a single key could be overridden incorrectly when upgrading from a v1.1.x version.
iOS/macOS/watchOS
- Change: Dropped support for the armv7k architecture on Apple Watch. To adapt, you should add
armv7kto the "Excluded Architectures" setting for your Apple Watch App or Extension target. - Important: Do not upgrade to this version if you need to maintain
armv7ksupport.
POSIX
- Change: Dropped support for armv7 architecture.
- Important: Do not upgrade to this version if you need to maintain
armv7support.