Weblock uses Proxy Autoconfiguration (PAC) mechanism to determine the proxy server used for outgoing HTTP and HTTPS traffic. Blocking ads is done by sending all communication with different ad servers via the dummy proxy server. It will fail every time and prevent the ads from being shown.
AdBlock uses iOS VPN OnDemand feature. It installs a VPN profile with predefined list of domains. Every time some app tries to communicate with one of the domains, it will try to connect via a non existing VPN server. This will also result in ads being blocked in different apps.
The main differences between Weblock and AdBlock are:
- Weblock works only with Wi-Fi, since we can't change cellular proxy settings without jailbreaking the device or putting it into supervised mode. AdBlock will work on both Wi-Fi and Cellular.
- AdBlock allows to block specific domains, while Weblock can manage rules based on URL with basic regexp matching. For example: with Weblock we can block banner ads in the NYTimes app by creating custom blacklist rule for URL:
*.nytimes.com/adx/*. With AdBlock we would need to block the whole domain:
*.nytimes.com. Unfortunately this would cause the actual content to be blocked as well as the ads. This is why AdBlock won't work in some cases - where ads and content are served from the same domain.
- Currently AdBlock supports predefined list of ad servers and custom blocking rules, while Weblock also allows the user to add redirect and whitelist rules.