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

1 Like

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.

3 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.

5 Likes

Just for the records, I opened an official ticket on November 5th with written that I cannot use my phone due to the upgrade, reporting the problem, and I still didn’t receive any answer.

Please tell me if this is serious.

Did you try the following :
Clear the cache of the app Quickstep.
Reboot your phone.

Clear the storage of the app Quickstep
Reboot your phone

Set NXTVision to Natural

Clear NXTVision

This topic here is not about reboots and the workarounds are mentioned here.

You cannot install another launcher to make it useable until a fix?

Well otherwise it seems support times are still extremly bad/slow, nothing I can do about.

1 Like

Pinging @Fairphone_CM .

Thank you guys for your replies, yes I found a workaround installing another launcher. However, it works not so well and I’d like to go back to my previous one. Changing launcher is like changing phone, and at the moment I don’t have 24 hours free to play with my phone.

Mine was a general complaint (I know useless) to highlight how bad the official communication channel is. Without this forum, and your lively and useful responses (thank you again for that!), one would have needed to buy a new phone. Because I cannot stay without phone for one month (for example I cannot work).

1 Like

s anyone receive an awnser after opening a ticket about this problem? More than 3 months after, still nothing for me.

My phone is working with the new launcher, but had bugs quite often.

After the requested latest update on Fairphone 4, the phone is not longer useable. After entering the screen password, it remains black, with short blinkings of the surface. It ask always to close Quickstep. The Fairphone support Chat made an advice, that was not useful. Please help.

Hello and welcome to the community
As a temporary workaround could you use a different launcher?