225 Commits

Author SHA1 Message Date
guoling 522cf55fa1 Prepare for v2.4.3 hotfix 2026-10-15 19:40:49 +08:00
toyeshhm 9012a9801a Fix undefined variables in README code samples and doc typos
- flutter/mmkv/README.md, OpenHarmony/MMKV/README.md: the reKey sample
  calls kmmkv.reKey(), but the instance is named mmkv
- OpenHarmony/MMKV/README.md: the TypedArray sample calls
  kv.decodeUint8Array() on an undefined kv; use mmkv
- OpenHarmony/MMKV/README.md: AES-258 -> AES-256
- CONTRIBUTING.md: accecpt -> accept, Additionly -> Additionally
2026-10-04 09:08:46 -05:00
ngnahtn 46b71fbe22 fix(android): guard onDetachedFromEngine NPE when libmmkv.so missing for ABI
The published com.tencent:mmkv AAR ships native libs for arm64-v8a and
x86_64 only. On an armeabi-v7a / x86 device onAttachedToEngine() throws
UnsatisfiedLinkError from loadLibrary() before `channel` is assigned. The
engine keeps running, but on activity destroy
FlutterEngineConnectionRegistry.removeAll() calls onDetachedFromEngine()
unconditionally -> channel.setMethodCallHandler(null) -> NullPointerException
-> "Unable to destroy activity" -> fatal crash on every app exit for that
whole ABI class.

- Catch the load failure so `channel` is still registered (MMKV method
  calls then fail gracefully through the existing FFI path).
- Null-guard onDetachedFromEngine().
2026-09-07 16:51:36 +07:00
guoling 79b6c97e78 udpate date of v2.4.2 2026-08-21 11:01:58 +08:00
guoling 6df31b7c0b Prepare for v2.4.2 hotfix 2026-08-20 17:42:52 +08:00
Toby 4517b252cc fix(flutter): 修复 SwiftPM 动态链接 MMKV 2026-08-20 17:20:23 +08:00
guoling e239b30858 Fix Flutter SwiftPM FFI symbol exports #1676 2026-08-20 15:53:34 +08:00
guoling bd7c8e6d9f Keep Flutter MMKV Core linked with SwiftPM #1676 2026-08-10 15:00:17 +08:00
guoling 8e9883ef6f Fix one-year expiration constants 2026-08-04 21:40:24 +08:00
guoling aba19d49df update change log 2026-07-30 14:47:23 +08:00
guoling b97eafecc6 update changelog date 2026-07-29 20:41:11 +08:00
guoling 4287c37f45 prepare for v2.4.1 2026-07-29 20:37:56 +08:00
guoling 4e3535f2c8 Harden MMKV close lifecycle handling #1669 2026-07-29 14:57:14 +08:00
guoling f3b27766a2 fix MMKV instance lifecycle handling #1669 2026-07-28 19:35:21 +08:00
guoling 316ec96d04 Migrate mmkv Flutter plugin from CocoaPods to SPM #1654
Move source files from darwin/Classes/ to the SPM-compatible layout
under darwin/mmkv_ios/Sources/mmkv_ios/. Add Package.swift with MMKV
dependency from GitHub. Update podspec paths so CocoaPods still works
as a fallback.
2026-03-31 17:26:26 +08:00
guoling b6edcb64dd tidy 2026-03-24 11:02:11 +08:00
guoling 748f883b45 prepare for v2.4.0 2026-03-19 15:25:39 +08:00
guoling a2f49120ae update changelog for v2.4.0 2026-03-18 16:23:10 +08:00
guoling 9348a93f26 refactor callback system into unified MMKVHandler across all platforms
Replace 4 separate static function pointers (LogHandler, ErrorHandler,
ContentChangeHandler, ContentLoadedHandler) with a single MMKVHandler
abstract class in Core C++. Update all 6 platform wrappers (iOS, Android,
OHOS, Python, Golang, Flutter) to use adapter classes bridging to the new
unified handler. Add onMMKVContentLoadSuccessfully callback to Android,
OHOS, Flutter, Python and Golang where it was previously missing.
2026-03-18 12:40:05 +08:00
guoling 1980694c42 add MMKV config for flutter 2026-02-09 20:42:17 +08:00
guoling 68b97af69f update readme for ohos & flutter 2025-12-04 12:21:50 +08:00
guoling e626bf4b64 fix pubspec typo 2025-12-02 20:27:25 +08:00
guoling 168fd758fb prepare for v2.3.0 2025-12-02 19:01:30 +08:00
guoling 4403eb9769 support aes 256 on flutter 2025-12-01 17:05:24 +08:00
guoling 71ee4df1f7 v2.2.4 2025-09-25 15:16:00 +08:00
guoling a1f1017caa mmkv_platform_interface v2.2.3: protect from freePtr() not found 2025-08-20 20:25:54 +08:00
guoling 797290c7bc update flutter config for mmkv_linux 2025-08-20 19:38:20 +08:00
guoling 720e6c0c7b migrate to Central Publisher Portal 2025-08-20 18:39:38 +08:00
guoling 6545be23fe prepare for v2.2.3 2025-08-20 17:23:21 +08:00
lingol 247fb77772 tidy 2025-08-20 18:34:05 +08:00
lingol 070524e18f linux done 2025-08-20 18:33:08 +08:00
Guo Ling 9478e8fcff tidy win32 arch 2025-08-19 22:27:03 +08:00
Guo Ling f9f39e0f72 flutter for win32 almost work 2025-08-18 18:14:30 +08:00
guoling c12d528de7 prepare Flutter Desktop support 2025-08-14 20:37:07 +08:00
guoling 9180143b64 update some dep 2025-05-08 12:51:59 +08:00
guoling 8093cb35e1 prepare for v2.2.2 2025-05-08 11:52:46 +08:00
guoling 73151c5c1e upgrade mmkv version for android demo project 2025-04-25 17:08:24 +08:00
guoling eea94733e6 add importFrom() for Flutter 2025-04-25 13:05:55 +08:00
guoling ab4ae28894 tidy 2025-04-24 19:45:08 +08:00
guoling e00f5ee3af prepare for v2.2.0 2025-04-24 17:40:49 +08:00
guoling 0e05353b4a add checkExist(), isFileValid() and groupPath() for Flutter, fix checkContentChangedByOuterProcess() not working bug 2025-04-22 18:09:12 +08:00
guoling 330a83f232 Flutter: 1. add groupPath() on iOS, 2. fix checkContentChangedByOuterProcess() not working bug 2025-04-22 17:31:36 +08:00
guoling 85e64c9422 add checkExist() for Flutter 2025-04-22 16:39:05 +08:00
guoling 7829f0327a flutter v2.1.1 2025-03-06 10:59:07 +08:00
guoling afd0f4b453 redirect constructor the right way #1504 2025-03-05 20:46:43 +08:00
guoling 2bf2114261 update mmkv_android & mmkv_ios flutter plugin settings 2025-02-18 19:48:47 +08:00
guoling 8493e1bea7 update change log date 2025-02-18 15:38:27 +08:00
guoling 4c4ff9d54f prepare for v2.1.0 2025-02-14 20:24:18 +08:00
宫绫 f90cb36b7d Fix and optimize for Flutter Android
Remove unused imports and fix deprecated implementations.
2025-02-05 11:57:30 +08:00
guoling 49d536b0af NameSpace works on flutter & ArkTS 2025-01-07 16:14:08 +08:00