Fixed
Status Update
Comments
il...@google.com <il...@google.com>
[Deleted User] <[Deleted User]> #2
deleted
[Deleted User] <[Deleted User]> #3
Project: platform/frameworks/support
Branch: androidx-main
commit 3a4bb5cc9921539344aea335266a6b068fb69bbb
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 15:00:51 2024
Rename `androidTest` to `androidInstrumentedTest` on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: I42ea11960d7dd83224d8ae8cb256c616735200d1
M savedstate/savedstate/src/androidInstrumentedTest/AndroidManifest.xml
M savedstate/savedstate/src/androidInstrumentedTest/kotlin/androidx/savedstate/ErrorInStaticBlock.android.kt
M savedstate/savedstate/src/androidInstrumentedTest/kotlin/androidx/savedstate/SavedStateRegistryTest.android.kt
M savedstate/savedstate/src/androidInstrumentedTest/kotlin/androidx/savedstate/ViewTreeSavedStateRegistryOwnerTest.android.kt
https://android-review.googlesource.com/3067205
Branch: androidx-main
commit 3a4bb5cc9921539344aea335266a6b068fb69bbb
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 15:00:51 2024
Rename `androidTest` to `androidInstrumentedTest` on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: I42ea11960d7dd83224d8ae8cb256c616735200d1
M savedstate/savedstate/src/androidInstrumentedTest/AndroidManifest.xml
M savedstate/savedstate/src/androidInstrumentedTest/kotlin/androidx/savedstate/ErrorInStaticBlock.android.kt
M savedstate/savedstate/src/androidInstrumentedTest/kotlin/androidx/savedstate/SavedStateRegistryTest.android.kt
M savedstate/savedstate/src/androidInstrumentedTest/kotlin/androidx/savedstate/ViewTreeSavedStateRegistryOwnerTest.android.kt
ap...@google.com <ap...@google.com> #4
Project: platform/frameworks/support
Branch: androidx-main
commit ccf0ec0a1d84f18fb366140dca86b9ba80b0fcbd
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 16:44:04 2024
Use `kmpDocs` on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: I288623ec97038c5641194828684ad05ba448afff
M docs-tip-of-tree/build.gradle
https://android-review.googlesource.com/3066769
Branch: androidx-main
commit ccf0ec0a1d84f18fb366140dca86b9ba80b0fcbd
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 16:44:04 2024
Use `kmpDocs` on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: I288623ec97038c5641194828684ad05ba448afff
M docs-tip-of-tree/build.gradle
[Deleted User] <[Deleted User]> #5
Project: platform/frameworks/support
Branch: androidx-main
commit 5d58fbb28a0613242ca71ac5ec0c30f6f807f909
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 11:15:03 2024
Add `KMP` as a build type on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: I689e0d87ec326c606e3b3b70e6dd2d3323ac3411
M settings.gradle
https://android-review.googlesource.com/3067202
Branch: androidx-main
commit 5d58fbb28a0613242ca71ac5ec0c30f6f807f909
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 11:15:03 2024
Add `KMP` as a build type on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: I689e0d87ec326c606e3b3b70e6dd2d3323ac3411
M settings.gradle
se...@google.com <se...@google.com>
da...@gmail.com <da...@gmail.com> #6
Project: platform/frameworks/support
Branch: androidx-main
commit 435d4ec5635e98b17ee0cbee4022037ff43abe7e
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 12:26:01 2024
Rename `main` to `androidMain` on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: Iec0c7b6d12abe1be6c50a05cda9467430c5c1ccc
M savedstate/savedstate/src/androidMain/AndroidManifest.xml
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/Recreator.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/SavedStateRegistry.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/SavedStateRegistryController.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/SavedStateRegistryOwner.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/View.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/ViewTreeSavedStateRegistryOwner.android.kt
M savedstate/savedstate/src/androidMain/res/values/ids.xml
https://android-review.googlesource.com/3067204
Branch: androidx-main
commit 435d4ec5635e98b17ee0cbee4022037ff43abe7e
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 12:26:01 2024
Rename `main` to `androidMain` on `savedstate`
Test: N/A
Bug: 334076622
Change-Id: Iec0c7b6d12abe1be6c50a05cda9467430c5c1ccc
M savedstate/savedstate/src/androidMain/AndroidManifest.xml
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/Recreator.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/SavedStateRegistry.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/SavedStateRegistryController.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/SavedStateRegistryOwner.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/View.android.kt
M savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/ViewTreeSavedStateRegistryOwner.android.kt
M savedstate/savedstate/src/androidMain/res/values/ids.xml
ni...@gmail.com <ni...@gmail.com> #7
Project: platform/frameworks/support
Branch: androidx-main
commit 1ceef555faa4f23da4d84d10710635a70477b778
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 14:59:42 2024
Convert `ErrorInStaticBlock` to Kotlin
Test: N/A
Bug: 334076622
Change-Id: I0486d8d7c62ea76f277a2df2b3a47bd7fde7d838
M savedstate/savedstate/src/androidTest/java/androidx/savedstate/ErrorInStaticBlock.kt
https://android-review.googlesource.com/3066904
Branch: androidx-main
commit 1ceef555faa4f23da4d84d10710635a70477b778
Author: Marcello Galhardo <mgalhardo@google.com>
Date: Tue Apr 30 14:59:42 2024
Convert `ErrorInStaticBlock` to Kotlin
Test: N/A
Bug: 334076622
Change-Id: I0486d8d7c62ea76f277a2df2b3a47bd7fde7d838
M savedstate/savedstate/src/androidTest/java/androidx/savedstate/ErrorInStaticBlock.kt
Description
STEPS TO REPRODUCE
1. Set up a Kotlin Activity that
a. Uses a ViewModel with the SavedState library
b. Declares the ViewModel with by viewModels()
c. Doesn't touch the ViewModel
2. Start another Activity using startActivityForResult()
3. In the onActivityResult() method, touch the viewModel
RESULTS
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { } to activity {com.twofortyfouram.locale.x.debug/com.twofortyfouram.ui.screen.setting_wallpaper.activity.alias.WallpaperSettingActivity}: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
at android.app.ActivityThread.deliverResults(ActivityThread.java:4398)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:4440)
at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:49)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1816)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6718)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
Caused by: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
at androidx.savedstate.SavedStateRegistry.runOnNextRecreation(SavedStateRegistry.java:168)
at androidx.lifecycle.AbstractSavedStateViewModelFactory.create(AbstractSavedStateViewModelFactory.java:71)
at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:177)
at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:145)
at androidx.lifecycle.ViewModelLazy.getValue(ViewModelProvider.kt:54)
at androidx.lifecycle.ViewModelLazy.getValue(ViewModelProvider.kt:41)
at com.twofortyfouram.ui.screen.setting_wallpaper.activity.WallpaperSettingActivity.getVm(Unknown Source:11)
at com.twofortyfouram.ui.screen.setting_wallpaper.activity.WallpaperSettingActivity.onActivityResult(WallpaperSettingActivity.kt:74)
at android.app.Activity.dispatchActivityResult(Activity.java:7462)
at android.app.ActivityThread.deliverResults(ActivityThread.java:4391)
... 11 more
WORKAROUND
Touch the ViewModel before starting the other Activity, e.g. vm.getApplicationContext() is sufficient