There is an oft-stated misconception that if a user never clicks on ads, then blocking them won't hurt a site or application financially. This is wrong, developers also earn money by just displaying ads. It is up to you whether you block ads or not. Personally I would not use applications that display ads because I find them very annoying, so without an ad blocker I would not install these applications.
AdAway uses the hosts file to block hostnames, that serve advertisements. The hosts file is a file found in /system/etc/hosts that maps hostnames to IP addresses. It is a traditional way to define hostname to IP address pairs without relying on the Domain Name System (DNS). All unwanted hostnames are redirected to 127.0.0.1 which means they will point to your own device.
Java on Android maintains its own internal DNS cache. The operating system will reflect the new hosts file immediately (verify that with ping on the command line) but you'll need to restart Android to rebuild the DNS cache of Java.
AdAway will also work without using the webserver!
You can enable a local webserver in preferences of AdAway to answer requests to the local IP address 127.0.0.1. This means requests from applications to ad servers which are redirected to 127.0.0.1 are answered by AdAway's webserver.
Some applications refuse to work, when ad servers are not reachable. With this method they will be reachable again, replying with a blank page and no ad images.
AdAway only restarts the Android Operation System not the whole Device.
Some hostnames may be missing in the provided hosts files from the Hosts Sources or the application has bundled the images to provide ads without accessing the internet. There are two methods to find hostnames which should be blocked:
• Open /data/data/org.example/databases/webviewCache.db, where org.example is the package name of the app that displays ads, and look for hostnames that seem to serve ads and are not used otherwise in the application.
• If the tcpdump binary is included in your Rom you can use it from the menu in AdAway to log DNS requests on your device.
Add the hostnames to your own Blacklist as detailed below and report these hostnames when you have verified them in the Forum Hosts Inbox of hosts-file.net.
Some applications need to communicate with a hostname that is blocked by AdAway or refuses to work when the hostnames which should serve ads are not reachable. See http://code.google.com/p/ad-away/wiki/ProblemApps to get a list of known applications that have problems. Otherwise do as described before to find out which hostnames are needed and add them to your Whitelist under Your Lists and report them to the bug tracker of AdAway.
You can set up your own server providing a hosts file with hostnames that you want to block and add it to the Hosts Sources or add the hostnames you want to block to the Blacklist (=Black) under Your Lists. Additionally, hostnames you want to exclude from blocking can be added to the Whitelist (=White) and hostnames you want to redirect to a specific IP address belong to the Redirection List (=Redirection).
See List of additional hosts sources for AdAway.
Please report it in the bug tracker of AdAway.