Apps organization bug

Thank you @tcecyk, both options are now ready. I just expect the bug to happen again.

Could you please advise how I am supposed to identify the interesting lines in the report? The on-device report gives a zip files with different files in it. I guess I should look into the “bugreport-heroltexx- … .txt” file. And then? What should I look at? “Blisslaunch” appears very often in this file.

Thank you again!

I participated/commented a bit on crash logs in Random reset of ALL icons order. Happening several times (#4286) · Issues · e / Backlog · GitLab - you look for classic stack-traces when an exception occurs… it has an easily identified visual pattern, as the lines leading up to the failing function will be indented a few spaces from the left:

E AndroidRuntime: FATAL EXCEPTION: main
E AndroidRuntime: Process: foundation.e.blisslauncher, PID: 3404
E AndroidRuntime: java.lang.IndexOutOfBoundsException: Index: 2, Size: 1
E AndroidRuntime: 	at java.util.ArrayList.get(ArrayList.java:437)
E AndroidRuntime: 	at foundation.e.blisslauncher.features.launcher.AppProvider.prepareLauncherItems(AppProvider.java:383)
E AndroidRuntime: 	at foundation.e.blisslauncher.features.launcher.AppProvider.handleAllProviderLoaded(AppProvider.java:284)
...

(the IndexOutOfBoundsException got a bugfix, so it will be something new at best)

search for the keyword “exception”. adb logcat also allows to filter by log-level. The “E” is for error, so you could go through a log either be searching for " E " (mind the spaces) or use “adb logcat *:E

but it will be hard to recreate the conditions of the crash I think.

2 Likes

To get practice reading the log one might explore Create a log @/e/ with a computer.

The biggest thing missing from this page is mention of the built in help for adb logcat

A device must be connected then

adb logcat --help

shows the ways you can be more selective.

-d = Dump the log and then exit

can dump a very big log, sometimes from the moment the device has booted.

A bit of practice when all is calm helps get used to actual bug tracing.

2 Likes

Thank you both for your replies and guidance. I’ll keep you posted if/when I get something out of the report / bug tracing.

It crashed again, but this time I was waiting for it. I’ve looked into the bugreport, thanks to @aibd and @tcecyk guidance.

Based on the fact it crashed around 8:38 / 8:40, I’ve found the following exception happened before and after the crash:

WindowManager: App trying to use insecure INPUT_FEATURE_NO_INPUT_CHANNEL flag. Ignoring

The first time it appeared was 9 minutes before the crash, in this context:

09-08 08:30:15.085  1000  3756  3786 W Looper  : Slow dispatch took 177ms android.ui h=com.android.server.policy.PhoneWindowManager$PolicyHandler c=com.android.server.policy.-$$Lambda$PhoneWindowManager$DisplayHomeButtonHandler$ljCIzo7y96OZCYYMVaAi6LAwRAE@30901a2 m=0
09-08 08:30:15.089  1000  3756 10064 E WindowManager: App trying to use insecure INPUT_FEATURE_NO_INPUT_CHANNEL flag. Ignoring
09-08 08:30:15.155  1000  3756 13566 E WindowManager: App trying to use insecure INPUT_FEATURE_NO_INPUT_CHANNEL flag. Ignoring
09-08 08:30:15.447  1000  3756  3789 I WindowManager: Screen frozen for +526ms due to Window{408f644 u0 com.android.systemui.ImageWallpaper}
09-08 08:30:15.499  1000  3756  5986 E WindowManager: App trying to use insecure INPUT_FEATURE_NO_INPUT_CHANNEL flag. Ignoring

The exception happened 15 times between 8:30 and 8:31, then 1 time at 8:36, 1 time at 8:38, and 4 time at 8:39, concluding with:

09-08 08:39:49.308  1000  3756 13566 E WindowManager: App trying to use insecure INPUT_FEATURE_NO_INPUT_CHANNEL flag. Ignoring
09-08 08:39:49.380  1000  3756 13566 I chatty  : uid=1000(system) Binder:3756_1F identical 1 line
09-08 08:39:49.404  1000  3756 13566 E WindowManager: App trying to use insecure INPUT_FEATURE_NO_INPUT_CHANNEL flag. Ignoring
09-08 08:39:50.039  1000  3756  3788 W WindowManager: App freeze timeout expired.

The last line, “App freeze timeout expired” happens only one time in the bug report and fits with the crash time. Maybe the “crash” means that the “timeout” (number of exceptions being “ignored”?) has expired?

Any idea or suggestion would be much appreciated!

2 Likes

Can you check the whole log for sensitive info and post it to a pastebin? I wonder for context, if process id of error loglines match up with the blisslauncher pid

Thank you for your reply, @tcecyk.

I do not know how to check what is a sensitive info in the log. Could you please explain how to do that, or if (and how) I can directly check myself “if process id of error loglines match up with the blisslauncher pid”?

Thanks!

search the log for (parts of) your email address , keywords as “imsi” and “imei”, " cookie" - if no adjacent strings seem like a disclosure or you just blank them then you’re good.

pid: order of integers in the log is “uid ppid pid” - your userid 1000, the parent process id that spawned the process bliss runs under, the pid. If I’m not mistaken. Whenever you have bliss mentioned, check the line for rightmost id, that’s bliss. Then you can search the log for all lines emitted by bliss with its pid (use enclosing spaces to not get false hits)

2 Likes

Thank you again for your guidance @tcecyk and please excuse the late reply.

As I have not looked at the report structure (yet!) which may be full of personal data, I’d prefer to limit the extract only to the relevant parts for the analysis, if you do not mind.

Blisslauncher pid seems to be 4758 but pid 6708 seems important as well. Here are the lines where one of these two are appear: 4758 and 6708 - Pastebin.com

What do you see? What else could I provide?

Thanks again

not the same intent, but

Not allowed to start service Intent

didnt have a hit for your error exactly

search too for other exceptions, but you could file a bug for the specific intent it fails on if you’re on latest

Hello and thanks for the reply @tcecyk

Could you please advise how I am supposed to file a bug please? In which section should I document the bug? Should I re-explain all the details on the Gitlab file and/or direct to this topic?

Thanks!

1 Like

there’s a doc entry on how to report in the bug tracker: Report an issue

depending on the email you use to register with the e-gitlab, you’d need to send a mail to get an account: E.foundation GitLab doesn't allow registration - #3 by Manoj

as I already checked if there is a prior bugreport on the same error message of yours you can go straight to report at Issues · e / Backlog · GitLab - it has a reporting template guiding you along. You can link the 3 similar crash reports and this forum thread. Make sure to include the exceptions you run into.

it’s work, yes…

2 Likes

Thanks! Done here: Apps organization bug / Bliss crash (#6042) · Issues · e / Backlog · GitLab

3 Likes

really well done. /e/ is looking for a blisslauncher dev, as soon as somebody picks this up it will be appreciated

2 Likes

Reading your logs, Trebuchet came to my mind.

Did you ever try Clearing data from the Trebuchet app?

Settings > Apps and notifications > Show all > 3 dot menu > Show system > Trebuchet > Storage.

2 Likes

@tcecyk thank you for your guidance, I’m glad if this can help.

@aibd thanks, I just did.

Also, it has not crashed since my update to v1.3 around 10 days ago. Maybe it’s because of the upgrade, or because I avoid using the central (physical) button… I will provide feedback if/when the crash happens again.

2 Likes

It crashed again today. So sadly upgrading to v1.3 (20220905216076) or clearing data from the Trebuchet app as suggested by @aibd are not solutions for the problem.

1 Like

This problem persists with /e/ version 1.5, android 12 (S), on Pixel 5.
I put in a SIM card and the icons were all reorganised by alphabetical order.
Happened to me three times for different reasons.

Terrible luck today, same bug happened again after I reorganised all the icons…

This time it happened while modifying the settings:
Accessibility–> Text and display → bold text.

Hi all,
I’m experiencing the same reset of order in bliss.
I’m up to date and using s9+.
Any solution ?
Best,