AdAway is an open source ad blocker for Android using the hosts file.
For more information visit http://adaway.org
- Have NDK directory in your PATH (http://developer.android.com/tools/sdk/ndk/index.html)
- Change to "AdAway" directory with
cd AdAway
- Execute
ndk-build
to compile native binaries.
- Have Android SDK "tools", "platform-tools", and "build-tools" directories in your PATH (http://developer.android.com/sdk/index.html)
- Open the Android SDK Manager (shell command:
android
). Expand the Extras directory and install "Android Support Repository" - Export ANDROID_HOME pointing to your Android SDK
- Execute
./gradlew renameExecutables
(IMPORTANT unusual step!) - Execute
./gradlew assemble
Fork AdAway and do a Pull Request. I will merge your changes back into the main project.
I am using the newest Android Studio for development. Development with Eclipse is currently not possible because I am using the new project structure.
- Clone the project from github
- From Android Studio: File -> Import Project -> Select the cloned top folder
- Import project from external model -> choose Gradle
Translations are hosted on Transifex, which is configured by ".tx/config".
- To pull newest translations install transifex client (e.g.
apt-get install transifex-client
) - Config Transifex client with "~/.transifexrc"
- Go into root folder of git repo
- execute
tx pull
(tx pull -a
to get all languages)
see http://help.transifex.net/features/client/index.html#user-client
- Indentation: 4 spaces, no tabs
- Maximum line width for code and comments: 100
- Opening braces don't go on their own line
- Field names: Non-public, non-static fields start with m.
- Acronyms are words: Treat acronyms as words in names, yielding !XmlHttpRequest, getUrl(), etc.
See http://source.android.com/source/code-style.html
- XML Maximum line width 999
- XML: Split multiple attributes each on a new line (Eclipse: Properties -> XML -> XML Files -> Editor)
- XML: Indent using spaces with Indention size 4 (Eclipse: Properties -> XML -> XML Files -> Editor)
See http://www.androidpolice.com/2009/11/04/auto-formatting-android-xml-files-with-eclipse/
Forked from the following sources and slightly modified to compile!
- dnsmasq: https://github.com/CyanogenMod/android_external_dnsmasq
- libpcap: https://github.com/CyanogenMod/android_external_libpcap
- tcpdump: https://github.com/CyanogenMod/android_external_tcpdump
"dnsmasq/source/src/Android.mk" add following line:
LOCAL_LDLIBS := -llog
"tcpdump/Android.mk":
LOCAL_C_INCLUDES += \
$(LOCAL_PATH)/missing\
$(LOCAL_PATH)/../libpcap
# disabled crypo libs, not needed in AdAway
# $(LOCAL_PATH)/../openssl/include\
#LOCAL_SHARED_LIBRARIES += libssl libcrypto
"tcpdump/config.h":
/* Whether or not to include the possibly-buggy SMB printer */
/* #undef TCPDUMP_DO_SMB */
/* Define to 1 if you have the <openssl/evp.h> header file. */
/* #undef HAVE_OPENSSL_EVP_H */
/* Define to 1 if you have the `crypto' library (-lcrypto). */
/* #undef HAVE_LIBCRYPTO */
AdAway is licensed under the GPLv3+.
The file LICENSE includes the full license text.
AdAway is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
AdAway is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with AdAway. If not, see http://www.gnu.org/licenses/.
-
ActionBarSherlock
http://actionbarsherlock.com/
Apache License v2 -
Android Donations Lib
https://github.com/dschuermann/android-donations-lib
Apache License v2 -
RootCommands
https://github.com/dschuermann/root-commands
Apache License v2 -
Mongoose Webserver
https://github.com/valenok/mongoose
MIT License -
Tcpdump/Libpcap
http://www.tcpdump.org/
BSD 3-Clause License -
HtmlTextView
https://github.com/dschuermann/html-textview
Apache License v2
-
status_enabled.svg, status_disabled.svg, status_update.svg
Dropbox Emblems Tango by Charles A.
http://forums.dropbox.com/topic.php?id=7818&replies=19
Creative Commons Attribution 3.0 Unported License -
status_fail.svg
Faenza Icons
GPLv3 -
icon.svg, banner.svg
AdAway by Dominik Schürmann
New version by Alin Ţoţea-Radu
GPLv3 -
Menu Icons
Original Android Icons