d4rken-org / sdmaid

SD Maid is an Android app that helps you manage files and apps.
https://play.google.com/store/apps/details?id=eu.thedarken.sdm
1.5k stars 743 forks source link

Bug application cleaner #2565

Closed GabrielMGitHub closed 5 years ago

GabrielMGitHub commented 5 years ago

When using the accessibility to clean the applications, always gets some without cleaning after a cleaning, I am forced to click again to clean.

20190511_162536

d4rken commented 5 years ago

If you long press the icon and view the system's window, does it show the same sizes?

If you wait 2-3 minutes before scanning again does it also still show results? SD Maid gets the cache size data via "usage stats" and the usage stats data takes some time to update.

Did the apps that are shown again, show any issues during deletion, e.g. multiple attempts, hangs?

GabrielMGitHub commented 5 years ago

Due to your answer in the other question, these items were not cleaned because I downloaded the Android block.

57578580-66febc00-7465-11e9-807f-7e1d5392cd6d

GabrielMGitHub commented 5 years ago

When I click on home, recent and back the SD Maid pauses for a few seconds and re-clean again, why not implement this when the user opens the Android block?

d4rken commented 5 years ago

That's something I can fix.

https://stackoverflow.com/a/31735939/1251958

d4rken commented 5 years ago

I'll experiment with sending Intent.ACTION_CLOSE_SYSTEM_DIALOGS when retrying. Should make it in one of the next updates.

GabrielMGitHub commented 5 years ago

Sounds promising.

GabrielMGitHub commented 5 years ago

I did the tests by downloading the quick access (blocks), the SD Maid closes the window and clears the application cache, however if I go down the block window and hold for a few seconds the cleaning of the application cache is aborted, possibly the time or number of attempts to try to clean is very short.

GabrielMGitHub commented 5 years ago

@d4rken look above.

GabrielMGitHub commented 5 years ago

I made new tests and it is not only when I block access that the cleaning of the cache of some applications is aborted, it is enough only to descend the access of the blocks a few consecutive times to abort the cleaning of the cache that is shown on the screen.

The implementation does not work as expected, in fact it continues with the same error.

d4rken commented 5 years ago

This is working as intended.

An accidental pull down of the notification drawer will no longer abort the process. SD Maid will attempt to dismiss it a few times, if the user keeps interfering, then the process is aborted.

The retry attempts are kept short on purpose, in case of important events, unexpected calls or other things, we don't want interfere too much, but abort early, so the user can deal with the event.

GabrielMGitHub commented 5 years ago

It is not happening this way, in my tests when lowering the menu of the block a few times the screen of the application freezes after a few seconds it jumps pro next, in the end the application that froze is not cleaned, something is wrong, it needs to be verified.

GabrielMGitHub commented 5 years ago

Device Samsung S8 Plus SM-G955FD.

d4rken commented 5 years ago

It is not happening this way, in my tests when lowering the menu of the block a few times the screen of the application freezes after a few seconds it jumps pro next, in the end the application that froze is not cleaned, something is wrong, it needs to be verified.

Only if the application has already failed or is close to a timeout, I don't think this happens with every app where you try this, right?

Generally this can't be made 100% fool-proof and this shouldn't be our intention, as previously said, we can't prevent everything so it doesn't make sense to have this 100% robust, if the user can still just turn off the screen or get an incoming message.

d4rken commented 5 years ago

If this never works, record a debug log please.

GabrielMGitHub commented 5 years ago

You did not understand the question, the user does not have to do much. The cleaning bug happens only by going down the quick access a few times, the item that is cleaning only freezes and jumps to the next without making any attempts.

GabrielMGitHub commented 5 years ago

Debug

sdmaid_logfile_1557960837686.txt.zip

d4rken commented 5 years ago

I've adjusted the timings to make a bit more lenient on accidental pull downs for v4.14.10.

The cleaning bug happens only by going down the quick access a few times

Yeah but why are you doing that while SD Maid is working? We can't prevent the user from doing things intentionally that cause problems.

d4rken commented 5 years ago

I've corrected one additional bug that caused this to not work if the notification drawer is blocking the Clear cache step instead of the Storage step.

GabrielMGitHub commented 5 years ago

Eu ajustei as temporizações para tornar um pouco mais branda em pull downs acidentais para v4.14.10.

O bug de limpeza acontece apenas por descer o acesso rápido algumas vezes

Sim, mas por que você está fazendo isso enquanto o SD Maid está funcionando? Não podemos impedir que o usuário faça intencionalmente as coisas que causam problemas.

I understand, but I'm here just to test and report the bugs and prevent users from ending up complaining about bugs and giving low note on your application, the tester does this, stress tests on the application.

d4rken commented 5 years ago

I appreciate it :heart:

GabrielMGitHub commented 5 years ago

I've adjusted the timings to make a bit more lenient on accidental pull downs for v4.14.10.

The cleaning bug happens only by going down the quick access a few times

Yeah but why are you doing that while SD Maid is working? We can't prevent the user from doing things intentionally that cause problems.

That did not work, today I lowered the blocks only once for less than 1 second and the application in the background did not clean, the SD maid stopped cleaning for a few seconds and jumped to the next. This function is not good.

d4rken commented 5 years ago

:frowning:

For now i'm not looking for fix any more issues that stem from user interference. Thanks for the feedback though!

GabrielMGitHub commented 5 years ago

The question that the solution of closing the window of the blocks alone has had no effect, rather than trying a few times before jumping pro next just freezes and jumps pro next. The error is there in the function of repeating the cleaning, for some time and then jumping pro next, but it does not, it just freezes, this is not user error and error in its function. You need to review the function that requires you to make further cleaning attempts before jumping on next, the error is there.

GabrielMGitHub commented 5 years ago

Do not give up, you've done a great job so far, learn one thing 1 uncorrected error today, it may become 10 later. I'm sure you have the skills to solve this issue. Do not give up.

d4rken commented 5 years ago

Open a new ticket and provide a debug log, if possible also a screen recoding.