Sunday, April 21, 2019

How do some apps get past ad blocking?


I'm already using LBE Privacy Guard, AdAway and Droidwall to strictly control ads and app permissions. (All of them require root to run).


Droidwall has a whitelist where only apps that actually fetch data from the internet are allowed. (Games, system apps etc are blocked)


However I find some apps that are able to show ads even when they're not on the whitelist in Droidwall. How do they do it? Are they relying on some separate core system component to do this? My solution is to click on the ad and instantly hit 'stop' on the browser window that pops up, then adding the ad host to my hosts file.


I'd prefer a permanent solution, so that only apps requiring the internet are able to get through.


(Given a choice, I'd prefer a time bound full version or a feature restricted demo version to any form of adware, be it on Android or the desktop).



What Android system component do I block to completely disable in app ads?



Answer



It's been 5 years since I asked this, and I've finally found a solution for rooted phones. Google Play Services is the culprit. You need an app that can disable individual sub-components of other apps. I use DisableService, so I'll use it as an example, you'll have to follow similar steps with other such apps.



  • Select Google Play Services from the list.

  • Look for and disable the following components - AdRequestBrokerService, AdvertisingNotificationService, AdvertisingIdService, AnalyticsService and AnalyticsUploadIntentService.


That's it. Other apps send requests to these services to display ads, and turning them off has no adverse effect on them.


No comments:

Post a Comment

samsung galaxy s 2 - Cannot restore Kies backup after firmware upgrade

I backed up my Samsung Galaxy S2 on Kies before updating to Ice Cream Sandwich. After the upgrade I tried to restore, but the restore fails ...