Appstate Transform
| Son Güncelleme | Kararlı Sürüm | Sürüm Adayı | Beta Sürümü | Alfa Sürümü |
|---|---|---|---|---|
| 28 Ekim 2026 | - | - | - | 1.0.0-alpha01 |
Bağımlılıkları bildirme
Appstate dönüşümüne bağımlılık eklemek için projenize Google Maven deposunu eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposu sayfasını okuyun.
Uygulamanız veya modülünüz için build.gradle dosyasında ihtiyacınız olan yapıların bağımlılıklarını ekleyin:
Modern
dependencies { implementation "androidx.appstate.transform:transform:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-android:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-desktop:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-iosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-iossimulatorarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-js:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-linuxarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-linuxx64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-macosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-mingwx64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-android:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-desktop:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-iosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-iossimulatorarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-js:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-linuxarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-linuxx64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-macosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-mingwx64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-tvosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-tvossimulatorarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-wasm-js:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-watchosarm32:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-watchosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-watchosdevicearm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-testing-watchossimulatorarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-tvosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-tvossimulatorarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-wasm-js:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-watchosarm32:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-watchosarm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-watchosdevicearm64:1.0.0-alpha01" implementation "androidx.appstate.transform:transform-watchossimulatorarm64:1.0.0-alpha01" }
Kotlin
dependencies { implementation("androidx.appstate.transform:transform:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-android:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-desktop:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-iosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-iossimulatorarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-js:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-linuxarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-linuxx64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-macosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-mingwx64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-android:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-desktop:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-iosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-iossimulatorarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-js:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-linuxarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-linuxx64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-macosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-mingwx64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-tvosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-tvossimulatorarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-wasm-js:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-watchosarm32:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-watchosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-watchosdevicearm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-testing-watchossimulatorarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-tvosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-tvossimulatorarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-wasm-js:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-watchosarm32:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-watchosarm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-watchosdevicearm64:1.0.0-alpha01") implementation("androidx.appstate.transform:transform-watchossimulatorarm64:1.0.0-alpha01") }
Bağımlılıklar hakkında daha fazla bilgi için Derleme bağımlılıkları ekleme başlıklı makaleyi inceleyin.
Geri bildirim
Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmek için fikirleriniz varsa lütfen bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir sorun için oy verebilirsiniz.
Daha fazla bilgi için Issue Tracker belgelerine bakın.
Sürüm 1.0
Sürüm 1.0.0-alpha01
28 Ekim 2026
androidx.appstate.transform:transform-*:1.0.0-alpha01 yayınlandı. 1.0.0-alpha01 sürümü bu kayıtları içerir.
Yeni özellikler
AppState Transform, Compose çalışma zamanı üzerine inşa edilmiş yeni bir kitaplıktır ve kullanıcı arayüzünüzün dışında bir oluşturma işlemi çalıştırmanıza olanak tanır. androidx.appstate.transform:transform yapısı, kitaplık API'lerini sağlar ve test için bir androidx.appstate.transform:transform-testing yapısıyla birlikte gelir. Geliştiriciler, uygulamalarının herhangi bir yerinde oluşturma işlemlerini yönetmek için Transform'u kullanabilir.
// With helper function
var sourceState by mutableStateOf(0)
val state = transform(initialValue = 0, scope = myCoroutineScope) {
// any time this state changes, this lambda will update
sourceState
}
// With TransformScope directly
val transformScope = TransformScope()
var sourceState by mutableStateOf(0)
val state = transformScope.launchTransform(initialValue = 0) {
// any time this state changes, this lambda will update
sourceState
}
myCoroutineScope.launch {
try {
transformScope.run()
} finally {
state.dispose()
}
}
// In test with the new transformTest API
@Test
fun testStateUpdate() = transformTest {
var sourceState by mutableStateOf(0)
val state = transform(
initialValue = 0, scope = backgroundScope, dispatcher = testDispatcher
) {
sourceState
}
assertThat(state.value).isEqualTo(0)
sourceState = 1
advance()
assertThat(state.value).isEqualTo(1)
}