Appstate Statestore

  
--
最近更新时间 稳定版 候选版 Beta 版 Alpha 版
2026 年 10 月 28 日 - - - 1.0.0-alpha01

声明依赖项

如需添加 appstate statestore 的依赖项,您必须将 Google Maven 仓库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库。

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

Groovy

dependencies {
    implementation "androidx.appstate.statestore:statestore:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-android:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-datastore:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-datastore-android:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-desktop:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-iosarm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-iossimulatorarm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-js:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-linuxarm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-linuxx64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-macosarm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-mingwx64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-tvosarm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-tvossimulatorarm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-wasm-js:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-watchosarm32:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-watchosarm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-watchosdevicearm64:1.0.0-alpha01"
    implementation "androidx.appstate.statestore:statestore-watchossimulatorarm64:1.0.0-alpha01"
}

Kotlin

dependencies {
    implementation("androidx.appstate.statestore:statestore:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-android:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-datastore:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-datastore-android:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-desktop:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-iosarm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-iossimulatorarm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-js:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-linuxarm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-linuxx64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-macosarm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-mingwx64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-tvosarm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-tvossimulatorarm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-wasm-js:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-watchosarm32:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-watchosarm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-watchosdevicearm64:1.0.0-alpha01")
    implementation("androidx.appstate.statestore:statestore-watchossimulatorarm64:1.0.0-alpha01")
}

如需详细了解依赖项,请参阅添加 build 依赖项。

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档。

版本 1.0

版本 1.0.0-alpha01

2026 年 10 月 28 日

发布了 androidx.appstate.statestore:statestore-*:1.0.0-alpha01。版本 1.0.0-alpha01 包含这些提交内容。

新功能

AppState StateStore 是一个基于 Compose 运行时构建的新库,可作为封装容器提供自定义集成。androidx.appstate.statestore 工件提供库 API,还附带用于状态持久性的 androidx.appstate.statestore:statestore-datastore 工件。开发者可以使用 StateStore 将其快照状态提升到应用层,并使用数据存储区集成来持久保存该状态。

class MyApplication : Application() {
    val stateStore = StateStore()
    private val scope = CoroutineScope(SupervisorJob() + Dispatchers.Default)

    override fun onCreate() {
        super.onCreate()

        scope.launch {
            // Start the listener in a child coroutine so it doesn't block the outer scope
            launch {
                try {
                    stateStore
                        .syncToDataStore(dataStoreFile("settings").absolutePath, this)
                } catch (e: Exception) {
                    e.printStackTrace()
                }
            }
        }
    }
}