A small change in Android 4.2.2 has left one of the biggest ad-blocking app on Android basically dead in the water. Adblock Plus is one of the web's most popular ad-blocking tools, and has been available for Android since November of last year. So, why has Google effectively killed it? Security issues.
Adblock Plus relies on the internet permission in Android to function, but it relies on a rather specific subset of that permission in order to work: the ability to automatically set a device's proxy server to 'localhost.' As is pointed out on a thread in the Android issues section of Google Code, this is a pretty serious security flaw. Allowing any app with the internet permission to change a device's proxy settings could lead to phishing abuse or compromised privacy.
What this means for Adblock, which automatically changes a device's proxy settings when activated, is a lot more work. If Adblock can't automatically set the proxy, that means the user will have to do so manually. Every time a connection is initiated. And for the average Adblock user, this probably means just not using the app anymore.
Adblock seems to be taking the news relatively well, though there's obviously some frustration. The company's lead developer had this to say:
This fix has made it impossible for Adblock Plus to automatically set the proxy for the current active connection. From a security perspective it makes sense but it has a significant, negative impact on everyone who uses our app. While in Android 2.x the proxy was globally configured for all connections, this changed with Android 4.x which requires to individually set a proxy for each Wi-Fi connection. In addition to that the proxy has to be set each time a user connects to a network and the process of changing those settings is not very user-friendly.
There is not much we can do right now except making the process as simple and as smooth of an experience for our users as possible. We hope for another update from Google with their next Android release to provide us with an appropriate API so that our app can work even better on non-rooted devices.
Given that only a very small subset of Android devices are even running Android 4.2.2 at this point (and it will likely remain that way a while yet), Adblock still has time to try to figure out a workaround to this problem. For now, the only solution the company is aware of is described here, though that's still a lot of taps that I'm guessing the average person won't want to bother with.