Fixed
Status Update
Comments
il...@google.com <il...@google.com> #2
It could easy to reproduce when turning on "Don't keep activities".
be...@gmail.com <be...@gmail.com> #3
Project: platform/frameworks/support
Branch: androidx-master-dev
commit ba0c19707915ff87d9cac2089fcd166bb5cca17d
Author: Ian Lake <ilake@google.com>
Date: Wed Nov 14 16:20:28 2018
Set the correct FragmentManager on active Fragments
All active Fragments should have the correct
FragmentManager set instead of always using the
Activity's FragmentManager.
While added Fragments have their FragmentManager
set correctly in moveToState(), active Fragments
weren't being set correctly, causing issues when
attempting to save the state of the FragmentManager.
Test: new FragmentLifecycleTest
BUG: 119256498
Change-Id: I830f729d93f00859509a0844fae19752342e6ccc
M fragment/src/androidTest/java/androidx/fragment/app/FragmentLifecycleTest.java
M fragment/src/main/java/androidx/fragment/app/FragmentManagerImpl.java
M fragment/src/main/java/androidx/fragment/app/FragmentState.java
https://android-review.googlesource.com/826954
https://goto.google.com/android-sha1/ba0c19707915ff87d9cac2089fcd166bb5cca17d
Branch: androidx-master-dev
commit ba0c19707915ff87d9cac2089fcd166bb5cca17d
Author: Ian Lake <ilake@google.com>
Date: Wed Nov 14 16:20:28 2018
Set the correct FragmentManager on active Fragments
All active Fragments should have the correct
FragmentManager set instead of always using the
Activity's FragmentManager.
While added Fragments have their FragmentManager
set correctly in moveToState(), active Fragments
weren't being set correctly, causing issues when
attempting to save the state of the FragmentManager.
Test: new FragmentLifecycleTest
BUG: 119256498
Change-Id: I830f729d93f00859509a0844fae19752342e6ccc
M fragment/src/androidTest/java/androidx/fragment/app/FragmentLifecycleTest.java
M fragment/src/main/java/androidx/fragment/app/FragmentManagerImpl.java
M fragment/src/main/java/androidx/fragment/app/FragmentState.java
il...@google.com <il...@google.com> #4
Thanks Ian! Looking forward to a new alpha release ASAP rather than monthly release.😅
be...@gmail.com <be...@gmail.com> #5
Thanks for fixing this!
be...@gmail.com <be...@gmail.com> #6
Wondering is there any release plan?
be...@gmail.com <be...@gmail.com> #7
Fragments 1.1.0-alpha02 is out now with this fix.
il...@google.com <il...@google.com>
to...@gmail.com <to...@gmail.com> #8
Does Preferences also depend on Fragments? In which case when will that be updated to 1.1.0-alpha02? Or is the recommended practice to specify both Preferences and Fragments in build.gradle so that we can force Fragments 1.1.0-alpha02?
be...@gmail.com <be...@gmail.com> #9
Re #8 - yes, if you need a specific version of Fragments, you should specify both Preferences and Fragments in your build.gradle.
The release schedule of AndroidX components is completely independent of one another, so Preferences will only get a new version when there's something new to release in Preferences.
The release schedule of AndroidX components is completely independent of one another, so Preferences will only get a new version when there's something new to release in Preferences.
jb...@google.com <jb...@google.com> #10
So, in general it sounds like if an androidx dependency (such as preference) is added to build.gradle, then any dependencies of that (e.g. fragment) should also be explicitly added so that the specific version can be specified. Is that right?
In other words, when we explicitly include preference-1.1.0-alpha01 we need to be aware that the fragment-alpha1.1.0-alpha01 is automatically being brought in and so might affect the fragment behaviour. Sorry, I know this is rather OT.
In other words, when we explicitly include preference-1.1.0-alpha01 we need to be aware that the fragment-alpha1.1.0-alpha01 is automatically being brought in and so might affect the fragment behaviour. Sorry, I know this is rather OT.
ap...@google.com <ap...@google.com> #11
Thanks, fix confirmed
jb...@google.com <jb...@google.com> #12
alpha02 version of fragments didn't fix this for me. Is there another solution?
na...@google.com <na...@google.com> #13
Re #12 - you're most likely hitting https://issuetracker.google.com/issues/120814739 - a related but separate issue fixed for alpha03
ma...@gmail.com <ma...@gmail.com> #14
Run
Description
Version used:
dependencies {
...
implementation 'androidx.appcompat:appcompat:1.4.2'
...
Devices/Android versions reproduced on: Samsung Galaxy Note 10 / Android 12
This is a problem in androidx library:
--------- beginning of crash
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: FATAL EXCEPTION: main
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: Process: sk.alteris.app.kalendarsk, PID: 6643
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: java.util.ConcurrentModificationException
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at java.util.ArrayList$Itr.next(ArrayList.java:860)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2184)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1971)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:311)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.fragment.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:274)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1244)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1092)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.viewpager.widget.ViewPager.onMeasure(ViewPager.java:1622)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.measureVertical(LinearLayout.java:995)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:197)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at androidx.appcompat.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:496)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:197)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:7980)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.widget.FrameLayout.onMeasure(FrameLayout.java:197)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at com.android.internal.policy.DecorView.onMeasure(DecorView.java:1277)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.View.measure(View.java:27129)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:4528)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:3220)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3525)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2911)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10458)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1108)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.Choreographer.doCallbacks(Choreographer.java:866)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.Choreographer.doFrame(Choreographer.java:797)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1092)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:938)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:226)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.os.Looper.loop(Looper.java:313)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:8663)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:567)
06-20 19:51:20.465 10283 6643 6643 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
06-20 19:51:20.465 10227 7726 7726 I HWRResConfig: [setPreloadRootDirectoryPath] mPreloadRootDirPath is set with /product/HWRDB/
06-20 19:51:20.467 1000 966 1340 D SyncManager: userId - 0 auto - true
06-20 19:51:20.469 1000 966 1544 D Debug : low && ship && 3rdparty app crash, do not dump
06-20 19:51:20.469 1000 966 1544 W ActivityManager: crash : sk.alteris.app.kalendarsk,10283