FP4 Quickstep keeps stopping after A15 upgrade -

Since I’m so annoyed by Fairphone not fixing the issue I finally collected some crash logs.

I freshly reseted the quickstep app.To reproduce the crash I just need to swipe up to open the menu, swipe down to close it and crash.

2025-12-01 17:56:46.116 27320-27320 AndroidRuntime          com.android.launcher3                E  FATAL EXCEPTION: main
                                                                                                    Process: com.android.launcher3, PID: 27320
                                                                                                    java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.contains(java.lang.CharSequence)' on a null object reference
                                                                                                    	at com.android.launcher3.uioverrides.QuickstepLauncher.isOrangeApp(QuickstepLauncher.java:1051)
                                                                                                    	at com.android.launcher3.uioverrides.QuickstepLauncher.onStateSetEnd(QuickstepLauncher.java:623)
                                                                                                    	at com.android.launcher3.uioverrides.QuickstepLauncher.onStateSetEnd(QuickstepLauncher.java:222)
                                                                                                    	at com.android.launcher3.statemanager.StateManager.onStateTransitionEnd(StateManager.java:426)
                                                                                                    	at com.android.launcher3.statemanager.StateManager.-$$Nest$monStateTransitionEnd(Unknown Source:0)
                                                                                                    	at com.android.launcher3.statemanager.StateManager$1.onAnimationSuccess(StateManager.java:402)
                                                                                                    	at com.android.launcher3.anim.AnimationSuccessListener.onAnimationEnd(AnimationSuccessListener.java:40)
                                                                                                    	at com.android.launcher3.anim.AnimatorPlaybackController$$ExternalSyntheticLambda3.accept(D8$$SyntheticClass:0)
                                                                                                    	at com.android.launcher3.anim.AnimatorPlaybackController.lambda$callListenerCommandRecursively$2(AnimatorPlaybackController.java:307)
                                                                                                    	at com.android.launcher3.anim.AnimatorPlaybackController$$ExternalSyntheticLambda6.accept(D8$$SyntheticClass:0)
                                                                                                    	at com.android.launcher3.anim.AnimatorPlaybackController.callAnimatorCommandRecursively(AnimatorPlaybackController.java:313)
                                                                                                    	at com.android.launcher3.anim.AnimatorPlaybackController.callListenerCommandRecursively(AnimatorPlaybackController.java:305)
                                                                                                    	at com.android.launcher3.anim.AnimatorPlaybackController.dispatchOnEnd(AnimatorPlaybackController.java:292)
                                                                                                    	at com.android.launcher3.anim.AnimatorPlaybackController$OnAnimationEndDispatcher.onAnimationSuccess(AnimatorPlaybackController.java:338)
                                                                                                    	at com.android.launcher3.anim.AnimationSuccessListener.onAnimationEnd(AnimationSuccessListener.java:40)
                                                                                                    	at android.animation.Animator$AnimatorListener.onAnimationEnd(Animator.java:708)
                                                                                                    	at android.animation.Animator$AnimatorCaller$$ExternalSyntheticLambda1.call(D8$$SyntheticClass:0)
                                                                                                    	at android.animation.Animator.callOnList(Animator.java:666)
                                                                                                    	at android.animation.Animator.notifyListeners(Animator.java:609)
                                                                                                    	at android.animation.Animator.notifyEndListeners(Animator.java:634)
                                                                                                    	at android.animation.ValueAnimator.endAnimation(ValueAnimator.java:1306)
                                                                                                    	at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1566)
                                                                                                    	at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:344)
                                                                                                    	at android.animation.AnimationHandler.-$$Nest$mdoAnimationFrame(Unknown Source:0)
                                                                                                    	at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:87)
                                                                                                    	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1416)
                                                                                                    	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1427)
                                                                                                    	at android.view.Choreographer.doCallbacks(Choreographer.java:1026)
                                                                                                    	at android.view.Choreographer.doFrame(Choreographer.java:951)
                                                                                                    	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1401)
                                                                                                    	at android.os.Handler.handleCallback(Handler.java:959)
                                                                                                    	at android.os.Handler.dispatchMessage(Handler.java:100)
                                                                                                    	at android.os.Looper.loopOnce(Looper.java:232)
                                                                                                    	at android.os.Looper.loop(Looper.java:317)
                                                                                                    	at android.app.ActivityThread.main(ActivityThread.java:8751)
                                                                                                    	at java.lang.reflect.Method.invoke(Native Method)
                                                                                                    	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
                                                                                                    	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:892)
2025-12-01 17:56:48.362  2659-2659  OverviewProxyService    com.android.systemui                 W  Binding died of 'ComponentInfo{com.android.launcher3/com.android.quickstep.TouchInteractionService}', try reconnecting
2025-12-01 17:56:48.441 26118-27670 ProcStatsManager        com.android.settings                 W  No process com.android.launcher3/10174 for service com.android.quickstep.TouchInteractionService
2025-12-01 17:56:48.476  4812-19832 iris@ForegroundUtils    com.tct.iris                         D  Id: 27673 ProcessName: com.android.launcher3  Label: Quickstep
2025-12-01 17:56:48.538 27673-27673 nativeloader            pid-27673                            D  Configuring clns-shared-7 for other apk /system_ext/priv-app/SearchLauncherQuickStep/SearchLauncherQuickStep.apk. target_sdk_version=35, uses_libraries=, library_path=/system_ext/priv-app/SearchLauncherQuickStep/lib/arm64:/system/lib64:/system_ext/lib64, permitted_path=/data:/mnt/expand:/data/user/0/com.android.launcher3:/system_ext/priv-app/SearchLauncherQuickStep:/system/lib64:/system_ext/lib64
2025-12-01 17:56:49.005  2659-2709  WindowManagerShell      com.android.systemui                 V   Checking filter Pair{{types=[] flags=0x0] notFlags=0x100 checks=[{atype=home independent=true modes=[OPEN,TO_FRONT] flags=NONE mustBeTask=false order=TOP topActivity=ComponentInfo{com.android.launcher3/com.android.searchlauncher.SearchLauncher} launchCookie=null},{atype=standard independent=true modes=[CLOSE,TO_BACK] flags=NONE mustBeTask=false order=ANY topActivity=null launchCookie=null}]} RemoteTransition { remoteTransition = android.window.IRemoteTransition$Stub$Proxy@fe8cc77, appThread = android.app.IApplicationThread$Stub$Proxy@f7580e4, debugName = QuickstepLaunchHome }}
2025-12-01 17:56:49.341 27673-27693 QuickstepModelDelegate  com.android.launcher3                D  Successfully registered for launcher snapshot logging!
2025-12-01 17:56:49.357 27673-27693 QuickstepModelDelegate  com.android.launcher3                D  notifyAppTargetEvent action=1 launchLocation=workspace/0/[-1,-1]/[1,1]
2025-12-01 17:57:49.106  4812-19832 iris@ForegroundUtils    com.tct.iris                         D  Id: 27673 ProcessName: com.android.launcher3  Label: Quickstep
2025-12-01 18:02:08.243  4812-22822 iris@ForegroundUtils    com.tct.iris                         D  Id: 27673 ProcessName: com.android.launcher3  Label: Quickstep
2025-12-01 18:02:09.872 27673-27693 QuickstepModelDelegate  com.android.launcher3                D  notifyAppTargetEvent action=1 launchLocation=workspace/0/[-1,-1]/[1,1]

And I’m not an Orange customer.

Edit:
Ok I’m totally missed that here is the actual soultion: FP4 Quickstep keeps stopping after A15 upgrade - - #139 by fkofler
this should be the one marked

I dont think this workaround is for the “non tech savvy user”, so I will not mark this as solution, however I can link it in my post that is marked as " solution" , so both options are visible.

2 Likes

Still no official response from fairphone, despite multiple reports of problems following the installation of android 15. A group action has already been envisaged, as exists for consumer associations for other consumer goods (cars for example).
I imagine that what we read here is only a small part of what owners of fairphone may encounter, because not everyone is aware of this forum, and the responses via official communication channels are quite silent.

Beside the fact that Orange FR and BE user should not have received/did not receive the update and received another Android 13 update instead.

So compared to the group that could have been affected when no actions woould have been taken by FP, I think the group hit is rather small.

And while I understand the issue is annoying, installing another launcher as workaround is rather easy in my eyes.

Using a different launcher is like using a different phone.

Icon/app placement on the screen(s) is very important for intuitive phone usage. I tried the proposed launcher, but it was super slow and I had to rearrange my apps, or learn new usage patterns.

So please no excuses. Especially since it seems the exact same bug was already present on FP5 updates.

2 Likes