{"repo":"FunnySaltyFish/ComposeDataSaver","free":true,"listed":false,"github":"https://github.com/FunnySaltyFish/ComposeDataSaver","clone":"git clone https://github.com/FunnySaltyFish/ComposeDataSaver.git","description":"在 Compose Multiplatform ( Android / JVM Desktop) 中优雅完成数据持久化 | An elegant way to do data persistence in Compose Multiplatform ( Android / JVM Desktop )","language":"Kotlin","stars":108,"topics":["jetpack-compose","android","kotlin","preferences","data-store","mmkv","compose-multiplatform","compose-multiplatform-library"],"license":"Apache-2.0","category":"mobile-apps","readme_excerpt":"ComposeDataSaver --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------ English Version 英文的 README 是由译站的长文翻译功能直接一键翻译自中文版本的。这是一个强大的翻译应用程序，利用大型语言模型的力量进行翻译，也由我开发。它还是一个 开源的Compose跨平台应用，并使用这个库来保存数据 。如果你在寻找一个完整的项目，可以去那看看 优雅地在 Compose Multiplatform ( Android / JVM Desktop / iOS / WASM ) 中完成数据持久化 - :tada: 简洁：近似原生 Compose 函数的写法 - :tada: 低耦合：抽象接口，不限制底层保存算法实现 - :tada: 强大：支持基本的数据类型和自定义类型 注：此库是对Compose中使用其他框架（比如 Preference、MMKV、DataStore 等）的封装，不是一个单独的数据保存框架 。您可以参考此链接以了解它的设计思想。 在线预览： 点击下方任意截图即可打开在线预览： 预览 1 预览 2 预览 3 --- --- --- 示例产物下载（始终指向最新正式版 Release）： - Android Debug APK - macOS Desktop DMG - Wasm 打包产物 - iOS Simulator Debug 包 - Latest Release 页面 iOS 产物为未签名的 Simulator 调试包，适合在模拟器或 Xcode 中验证，不能直接作为真机 IPA 安装。 --- 引入 在 settings.gradle 引入仓库位置 在项目 build.gradle 引入 注意：自 v1.2.0 起，仓库转为 Compose Multiplatform，发布至 Maven Central，Group Id 也有改变。从 v1.2.0 之前升级版本时请注意更改 示例代码 以下介绍的示例代码均可在 这里 查看具体实现 示例应用采用分组布局，并内置了日志侧边栏，方便直接查看读写日志与状态变化。 配置 项目使用 DataSaverInterface 的实现类来保存数据，因此 您需要先提供一个此类对象。 Android Perference 项目默认包含了使用 Preference 保存数据的实现类 DataSaverPreferences ，可如下初始化： 除此之外， 我们也提供了基于 MMKV 或者 DataStorePreference 的简单实现 MMKV 1. 在上述依赖基础上，额外添加 2. 如下初始化 --- DataStorePreference 1. 在上述依赖基础上，额外添加 2. 如下初始化 JVM Desktop 默认包含了基于 java.util.Properties 的实现类 DataSaverProperties ，您可以如下初始化： 如果您需要加密存储，可以使用 DataSaverEncryptedPr","default_branch":null,"files":null,"tree":[],"storefront":"/r/FunnySaltyFish","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/FunnySaltyFish/ComposeDataSaver/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}