Opened on 03/11/2014 at 10:21:31 AM
Last modified on 12/21/2017 at 11:29:47 AM
#13 new change
Investigate UI freeze on main activity start
Reported by: | trev | Assignee: | |
---|---|---|---|
Priority: | P3 | Milestone: | |
Module: | Adblock-Plus-for-Android | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Platform: | Android | |
Ready: | yes | Confidential: | no |
Tester: | Verified working: | no | |
Review URL(s): |
Description
Attachments (0)
Change History (18)
comment:1 Changed on 03/11/2014 at 10:51:58 AM by philll
- Blocking 7 added
comment:2 Changed on 03/11/2014 at 12:57:59 PM by philll
- Keywords libadblockplus integration cleanup removed
comment:3 Changed on 03/11/2014 at 09:34:51 PM by trev
- Component changed from Unknown to ABP-Android
comment:4 Changed on 03/12/2014 at 11:38:19 AM by philll
- Owner set to rjeschke
- Status changed from new to assigned
comment:5 Changed on 03/12/2014 at 04:55:19 PM by fhd
- Priority changed from Unknown to P3
comment:6 Changed on 03/12/2014 at 04:58:05 PM by fhd
- Cc trev added
- Priority changed from P3 to Unknown
comment:7 Changed on 03/12/2014 at 05:12:33 PM by fhd
- Owner rjeschke deleted
comment:8 Changed on 03/12/2014 at 05:12:56 PM by fhd
- Status changed from assigned to accepted
comment:9 Changed on 03/12/2014 at 05:14:33 PM by fhd
- Priority changed from Unknown to P3
comment:10 Changed on 03/13/2014 at 06:30:33 AM by trev
- Reporter changed from philll to trev
Yes, I reported this originally - this was something nobody else could reproduce. The UI would freeze when I enabled Adblock Plus in its settings. Not sure whether this is still an issue (the report is very old), will check.
comment:11 Changed on 03/21/2014 at 09:11:02 AM by philll
- Status changed from accepted to new
comment:12 Changed on 04/30/2014 at 09:00:33 AM by rjeschke
- Ready unset
This issue still exists. I can reproduce this on my Galaxy S2.
It is caused by the full engine startup on opening the preferences app. There are now two ways to fix this:
- Perform the engine startup in a background thread, display a beach-ball and update/unlock the UI when startup is done
- As the proxy already runs as a service, we could of course just use the already running engine there. This would introduce some IPC/broadcasting to retrieve the needed infos but would speed up the preferences app's startup.
The second solution would definitely need more code refactoring and would need to be combined with solution 1 when there's no service running.
I'm still undecided on this issue's fix and would appreciate any input on this.
Also: shouldn't this be more like P2? Seems to me as a major pita.
comment:13 Changed on 04/30/2014 at 11:28:24 AM by trev
You are saying that two instances of the engine are currently running when we open preferences? Then - yes, we definitely need to fix that. I assumed that the UI already worked by querying the service.
comment:14 Changed on 05/02/2014 at 09:25:20 AM by rjeschke
- Blocking 7 removed
- Priority changed from P3 to P2
- Summary changed from [libadblockplus integration cleanup] Investigate UI freeze on main activity start to Investigate UI freeze on main activity start
comment:15 Changed on 06/11/2014 at 11:46:59 AM by rjeschke
Currently 'won't fix', explanation follows:
ABP for Android uses a service for filtering through the proxy. This service is a 'bound' service which is directly attached to the application (the preferences).
It seems like this service sometimes just dies without any notification which causes the long start-up delay.
A possible solution would be to use a 'real' service (i.e. a foreground service running in its own process). But this is now minor fix as this would create a real separation between the preferences and the proxy which then requires IPC to communicate.
So, currently this issue is 'backlogged'.
comment:16 Changed on 06/11/2014 at 03:29:03 PM by rjeschke
- Priority changed from P2 to P3
comment:17 Changed on 10/08/2014 at 11:13:15 AM by rjeschke
- Platform set to Android
- Ready set
comment:18 Changed on 12/21/2017 at 11:29:47 AM by fhd
- Cc trev removed
Adding Wladimir, I think he created this originally. Do you remember how this can be reproduced?