AFWall+ (Android Firewall +) - iptables based firewall for Android

Overview

AFWall+ (Android Firewall+)

Android CI Crowdin GitHub F-Droid GitHub All Releases GitHub repo size

Description

Android Firewall+ (AFWall+) is an advanced iptables editor (GUI) for Android. It provides fine-grained control over which Android apps are allowed to access the network.

For more information and a community discussion ground, please visit the official XDA thread or the official Wiki page.

Google Play

Index

Availability

AFWall can be downloaded via Google Play Store, GitHub or via F-Droid.

The changelog documents changes between each new release.

Supports

  • Android versions 5.x to 11.x for 4.x - 2.9.9 for 2.x - 1.3.4.1
  • Compatible with Magisk and LineageOS su.
  • ARM/MIPS/x86 processors
  • IPv4 & IPv6 protocols
  • WiFi, mobile data, LAN, VPN, tether, roaming and Tor
  • Multi-user (multiple profiles)
  • Many languages (see Translating)
  • Tasker and Locale plugin
  • Xposed plugin

Highlights

  • Easy to install
  • Simple to use
  • Free & open source
  • No advertisements
  • Built-in IPtables/BusyBox

Features

  • List and search for all installed applications
  • Sort installed applications by installation date, UUID or in alphabatical order
  • Receive notification for any newly installed application, AFwall only list app with INTERNET_PERMISSION
  • AFWall comes with it's logs service to see what's going on
  • Display notifcations for blocked packets
  • Filter blocked packet notifications per app
  • Export & import rules ("Import All Rules" requires the donate version)
  • Option to prevent data leaks during boot (requires init.d support or S-OFF)
  • Password protection
  • Option to manage iptable rules with a custom script
  • Device Admin to protect AFWall+ from uninstall (see here why it was removed)

Bug Reports

Please check GitHub's issues section for existing bugs and in case you like to submit a new one. Feature requests are also welcome.

Before you report any problem/bug, take a look into the how-to-report a bug section.

Limitations

  • A firewall cannot protect against attacks that are performed outside the operating point. For example, if there is a Point-to-Point connection to the Internet.
  • A firewall cannot prevent corporate data from being copied to a memory stick or HDD, and having these removed from the building.
  • AFWall+ does not scan for virus/malware that may exist in the files that pass through it, because it is a firewall and not an antivirus solution.
  • AFWall+ is not an ad-blocker.
  • Some apps/script which are running under admin rights might bypassing AFWall because they overwrite the system own IPtables with their own rules. Make sure you only give trusted application superuser rights, most "su"-solutions have companion apps which showing which apps are running under which rights like MagisK, Chainfire's su etc.

Compatibility

AFWall+ has been successfully tested under Android versions 4.x - 9.x. and is reported to work with most Android variants, including stock or exotic ROMs.

We do not recommend using AFWall+ in combination with any of the similar solutions (Avast, Kaspersky, NetGuard etc) because this could result in conflicts or even data leaks (e.g. IPtables could get overwritten).

Upgrading

The upgrading mechanism is really simple, basically you can just "over-install" the new version over the old one, however this is the best pratice (which we recommended):

  • Make a backup of the current version (e.g. via Titanium Backup).
  • Do not remove the current version (otherwise your settings might getting reset).
  • Download the latest AFWall+ version.
  • Install the new version over the previous version.
  • Done!

Permissions

AFWall+ asks for the following Android permissions:

  • RECEIVE_BOOT_COMPLETED: Autostart (Bootup) AFWall+ after the system finishes booting.
  • ACCESS_NETWORK_STATE: Allows AFWall+ to access information about networks (iptables).
  • WRITE_EXTERNAL_STORAGE: Allows AFWall+ to write to external storage for debug log and export iptables rules.
  • INTERNET: NetworkInterface.getNetworkInterfaces() needs android.permission.INTERNET. This is just being used to get the IPv4 and IPv6 addresses/subnets for each interface, so the LAN address ranges can be determined. Nothing is actually trying to access the network. Also take a look at Stackoverflow.
  • ACCESS_WIFI_STATE: Used to detect the tether state.
  • DEPRECATED ACCESS_SUPERUSER: Standard to support Superuser/SuperSU (by Koushik/Chainfire)

Frequently Asked Questions

Having some problems with AFWall+? Check out our FAQ before reporting a bug or problem that may already be known or answered.

License

AFWall+ is released under the GNU General Public License v3.0 License.

Acknowledgements

The original codebase was derived from DroidWall by Rodrigo Rosauro. DroidWall was sold to AVAST in December 2011, and is no longer actively maintained.

This project also uses some other open-source libraries such as:

Project License Website
Android Color Picker Apache License 2.0 https://github.com/attenzione/android-ColorPickerPreference
Busybox GNU GPLv2 http://www.busybox.net
DBFlow MIT https://github.com/Raizlabs/DBFlow
Prettytime Apache License 2.0 https://github.com/ocpsoft/prettytime
material-dialogs MIT License https://github.com/afollestad/material-dialogs
iptables GNU GPLv2 http://netfilter.org/projects/iptables/index.html
Libsuperuser Apache License 2.0 https://github.com/Chainfire/libsuperuser
Locale Plugin Apache License 2.0 http://www.twofortyfouram.com
Networklog Mozilla Public License Version 2.0 https://github.com/pragma-/networklog
Root Tools Apache License 2.0 https://github.com/Stericson/RootTools

Compiling the APK

Prerequisites:

  • Android SDK in your $PATH (both platform-tools/ and tools/ directories)
  • Javac 1.7 (or higher) and a recent version of Apache ant in your $PATH
  • Git should be added in your $PATH
  • Use the Android SDK Manager to install API 19 (or higher)

Quick start:

git clone git://github.com/ukanth/afwall
cd afwall
./gradlew clean assembleDebug

For complete instructions, please take a look at the Wiki's How To Compile AFWAll section.

Compiling Native Binaries

You can compile the external binaries like BusyBox or the IPtables yourself, on the host side, you'll need to install the following:

  • NDK r10, nominally under /opt/android-ndk-r10
  • Host-side gcc 4.7, make, etc. (Red Hat 'Development Tools' group or Debian build-essential)
  • autoconf, automake, and libtool

This command will build the Android binaries and copy them into res/raw/:

make -C external NDK=/opt/android-ndk-r10

Contributing

You can fork the repository and contribute using pull requests.

All contributions no matter if large or small, major features, bug fixes, additional language translations, unit/integration tests are welcomed and appreciated. The pull requests and findings are usually getting reviewed and discussed with the developer and the community .

Translating

The res/values-* dirs are kept up-to-date automatically via the Crowdin Translate Extension. See our official translation page in case you like to contribute.

AFWall+ is available in many languages but if yours is not included - or if it needs updating or improving - please create an account and use the translation system and commit your changes.

Donations

Donations are optional and helps the project in order to keep up the development. The official donation link is the one below which points to the official AFWall+ PayPal account. You optionally can buy the unlocker key via Google Play Store which unlocks additional features in AFWall+, the unlocker is not avbl. via F-Droid.

Donate

Comments
  • Problems after Update to Android 9

    Problems after Update to Android 9

    I have updated my Pixel 2 to Android 9. After updating I have rooted with/over Magisk 16.7. But now after a few houres AFWall v2.9.9 (donate) is blocking all all kind of media downloads (youtube, google play, image and video downloads via whatsapp), If I reinstall AFWall+ it works again a few houres. Before updating to Android 9 it worked perfectly. Does anybody have the same issue?

    Rules: https://pastebin.com/ZvgqHCfd

    Edit: Exactly the same issue I have: https://forum.xda-developers.com/showpost.php?p=77302832&postcount=4612

    Bug Critical 
    opened by bootsmann 66
  • 3.5.0 error applying rules

    3.5.0 error applying rules

    Describe the bug After upgrading to 3.5.0 it seems that I can no longer apply the rules. Or I should say "almost" because it works probably 1/30.

    Firewall Logs Emailed the complete log to [email protected]

    The log is full of the similar lines:

    ====== 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/iptables -A afwall-3g-home -m owner --uid-owner 10268 -j RETURN' exited with status 4, retrying (attempt 1/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 1/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 2/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 3/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 4/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 5/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 6/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 7/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 8/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 9/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4, retrying (attempt 10/10) 22:18:33 command '/data/user/0/dev.ukanth.ufirewall/app_bin/ip6tables -A afwall-3g-home -m owner --uid-owner 10257 -j RETURN' exited with status 4 Output: Another app is currently holding the xtables lock. Perhaps you want to use the -w option?
    

    Smartphone (please complete the following information):

    • Device: Nokia 8.3 5G
    • Android OS: stock Android 11 (00WW_2_200)

    Additional context

    It appears like a plain race condition. I have found that disabling IPv6 support appears to fix the problem. And it appears the app tries to apply both IPv4 and IPv6 rules concurrently. Which probably explains the message about "another app holding xtables lock", the reason why the app appears to retry the commands and also explains why sometimes it works.

    Maybe it should simply apply the rules sequentially?

    Review 
    opened by ngrigoriev 45
  • AFWall 1.2.6 issues

    AFWall 1.2.6 issues

    Here are the collection of issues reported and devices

    • Network blocked completly ( because of OUTPUT DROP)
    • Error applying rules ( N4 / S3 / Xperia )
    Bug 
    opened by ukanth 42
  • Tethering DNS problem

    Tethering DNS problem

    When AFWALL is enabled, USB tethering DNS resolution does not work. However, browsing sites by ip works, so the only problem is the DNS.

    (Tethering) - DHCP+DNS services is enabled. Enabling or disabling (root) - Applications running as root or (Kernel) - Linux Kernel has no effect.

    Versions: AFWall+ (v1.3.4.1), Android 4.4.4 Cyanogenmod 11-20140805-M9-hammerhead, Nexus 5.

    There were similar issues before: #178 , #4

    Edit: Using Black list mode solves this, see attached image. screenshot_2014-12-07-12-11-30

    Bug Duplicate DNS 
    opened by SafwatHalaby 39
  • afwall leaks Wi-Fi traffic for an blocked application for a short time[kingroot issue]

    afwall leaks Wi-Fi traffic for an blocked application for a short time[kingroot issue]

    I blocked Whatsapp for Wi-Fi and LAN and allowed it for mobile connections. But when I reenable Wi-Fi the android connection manager shows me that some kbytes slip through the Wi-Fi device. (Enable Wi-Fi, disable Wi-Fi enable Wi-Fi)

    Note: This only seems to happen for a short time when the connection was established. Because all traffic is blocked after that. Android 4.4.4

    DNS Question 
    opened by towlie 38
  • Add mDNS support for local networks

    Add mDNS support for local networks

    When I enable "LAN control" on my Android device I cannot send out mDNS requests. mDNS broadcasts go to 224.0.0.251 on UDP port 5353. This request stays within the local network and, I believe, should be allowed. It's useful for printer and device discovery.

    My request is that this address range would be allowed/whitelisted when I enable 'LAN communication' for one of my apps.

    More info on mDNS can be found at: https://en.wikipedia.org/wiki/Multicast_DNS

    Thanks for your time developing this program.

    Feature 
    opened by techryda 37
  • Tethering

    Tethering

    Hi,

    After the last update if I wanna to use tethering I have to disable AFWall. Is other option for tethering about I don't know or it's a bug?

    Thank you!

    Bug 
    opened by MysterySeby 34
  •  A/libc: Fatal signal 13 (SIGPIPE)

    A/libc: Fatal signal 13 (SIGPIPE)

    #551 reopening as i got this when i close afwall window

    6807-6807/dev.ukanth.ufirewall I/art: System.exit called, status: 0
    6807-6807/dev.ukanth.ufirewall I/AndroidRuntime: VM exiting with result code 0, cleanup skipped.
    763-1003/? D/GraphicsStats: Buffer count: 7
    763-1003/? I/WindowState: WIN DEATH: Window{7e6602 u0 dev.ukanth.ufirewall/dev.ukanth.ufirewall.MainActivity}
    763-778/? I/libprocessgroup: Killing pid 6840 in uid 10068 as part of process group 6807
    763-778/? I/libprocessgroup: Killing pid 7566 in uid 10068 as part of process group 6807
    763-778/? I/ActivityManager: Process dev.ukanth.ufirewall (pid 6807) has died
    763-778/? W/ActivityManager: Scheduling restart of crashed service dev.ukanth.ufirewall/.service.RootShell in 1000ms
    763-778/? W/ActivityManager: Scheduling restart of crashed service dev.ukanth.ufirewall/.log.LogService in 11000ms
    763-1003/? W/InputMethodManagerService: Got RemoteException sending setActive(false) notification to pid 6807 uid 10068
    10060-10060/? A/libc: Fatal signal 13 (SIGPIPE), code 0 in tid 10060 (dmesg)
    333-333/? I/DEBUG: property debug.db.uid not set; NOT waiting for gdb.
    333-333/? I/DEBUG: HINT: adb shell setprop debug.db.uid 100000
    333-333/? I/DEBUG: HINT: adb forward tcp:5039 tcp:5039
    333-333/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    333-333/? A/DEBUG: CM Version: '13.0-20160803-UNOFFICIAL-temasek-hlte'
    333-333/? A/DEBUG: Build fingerprint: 'samsung/hltexx/hlte:5.0/LRX21V/N9005XXUGBOK6:user/release-keys'
    333-333/? A/DEBUG: Revision: '0'
    333-333/? A/DEBUG: ABI: 'arm'
    333-333/? A/DEBUG: pid: 10060, tid: 10060, name: dmesg  >>> dmesg <<<
    333-333/? A/DEBUG: signal 13 (SIGPIPE), code 0 (SI_USER), fault addr --------
    333-333/? A/DEBUG:     r0 ffffffe0  r1 b6c40000  r2 00000283  r3 b6c4023f
    333-333/? A/DEBUG:     r4 00000283  r5 b6c40000  r6 00000001  r7 00000004
    333-333/? A/DEBUG:     r8 b6f98568  r9 00000000  sl 00000000  fp be8a1a3c
    333-333/? A/DEBUG:     ip 00000000  sp be8a1988  lr b6f41ca9  pc b6e7de0c  cpsr 20060010
    763-971/? W/NativeCrashListener: Couldn't find ProcessRecord for pid 10060
    333-333/? A/DEBUG: backtrace:
    333-333/? E/DEBUG: AM write failed: Broken pipe
    333-333/? A/DEBUG:     #00 pc 00041e0c  /system/lib/libc.so (write+12)
    333-333/? A/DEBUG:     #01 pc 00007ca5  /system/bin/toybox
    333-333/? A/DEBUG:     #02 pc 00009a5d  /system/bin/toybox
    333-333/? A/DEBUG:     #03 pc 0000a851  /system/bin/toybox
    333-333/? A/DEBUG:     #04 pc 0000711d  /system/bin/toybox
    333-333/? A/DEBUG:     #05 pc 00006d01  /system/bin/toybox
    333-333/? A/DEBUG:     #06 pc 00007167  /system/bin/toybox
    333-333/? A/DEBUG:     #07 pc 000173bd  /system/lib/libc.so (__libc_init+44)
    333-333/? A/DEBUG:     #08 pc 00006c10  /system/bin/toybox
    333-333/? A/DEBUG: Tombstone written to: /data/tombstones/tombstone_08
    763-797/? I/BootReceiver: Copying /data/tombstones/tombstone_08 to DropBox (SYSTEM_TOMBSTONE)
    763-899/? I/TemperatureHumiditySensor: Accuracy has been changed to 3
    763-791/? I/ActivityManager: Start proc 10061:dev.ukanth.ufirewall/u0a68 for service dev.ukanth.ufirewall/.service.RootShell
    10061-10061/? I/art: Late-enabling -Xcheck:jni
    10061-10061/dev.ukanth.ufirewall W/System: ClassLoader referenced unknown path: /data/app/dev.ukanth.ufirewall-1/lib/arm
    10061-10061/dev.ukanth.ufirewall I/AFWall: Starting Log Service: while true; do dmesg -c ; sleep 1 ; done for LogTarget: LOG
    10061-10061/dev.ukanth.ufirewall I/AFWall: rootSession is not Null
    10061-10061/dev.ukanth.ufirewall D/AFWall: logservice shell started
    10102-10102/? D/AndroidRuntime: >>>>>> START com.android.internal.os.RuntimeInit uid 0 <<<<<<
    10102-10102/? D/AndroidRuntime: CheckJNI is OFF
    16661-16661/? D/ICU: No timezone override file found: /data/misc/zoneinfo/current/icu/icu_tzdata.dat
    16661-16661/? I/Radio-JNI: register_android_hardware_Radio DONE
    16661-16661/? D/AndroidRuntime: Calling main entry com.android.commands.am.Am
    16661-16661/? D/AndroidRuntime: Shutting down VM
    
    Bug 
    opened by c3ph3us 33
  • Android 8.1 Oreo / 9.0 Pie

    Android 8.1 Oreo / 9.0 Pie "Error applying iptable rules"

    Hello, i just switched to android 8.1 and i'm getting an error while activating the firewall. Whenever i press activate firewall it starts counting the rules and then responds with "Error applying iptable rules"

    opened by subdancer 32
  • [WIP] Transparent Torification support

    [WIP] Transparent Torification support

    I'm not familiar with the codebase or Android development in general, but this seems to work. I copypasted the VPN implementation to add a new checkbox that pushes traffic through Orbot. Works on my phone.

    Is this a viable feature to be added? If so I'll clean it up.

    opened by Jookia 30
  • AFWall+ not working after reboot

    AFWall+ not working after reboot

    Hello,

    I recently opened https://github.com/ukanth/afwall/issues/699 but it seems that actually the problem is another: I uninstalled and reinstalled AFWall+ and bought the license and had an empty setup. In this everything was okay, i.e., all apps were blocked - also VPN based.

    Yet, after an immediate reboot of the phone (AICP based on LineageOS, Android 7.1, device HTC10) I noticed that beside the fact that no app was selected for traffic (i.e., all should still be blocked) internet traffic was flowing normally. The browser could access any page, Google Play was working, etc.

    So it seems that after a device reboot AFWall+ does not get activated again though it says that it is active.

    opened by ghost 30
  • LAN connections blocked after a while when AFWall in background very annoying

    LAN connections blocked after a while when AFWall in background very annoying

    Hi.

    I've got this very annoying issue.

    I use my phone as a document scanner only and rely heavily on having transparent LAN connection from and into the phone. I use Xyplorer and SMBSync2 to transfer data and the issue is that despite allowing LAN connections for ALL apps in AFWall+ (and denying internet for ALL) and also enabling the option to allow inbound LAN connections after a while (I don't know how long) when AFWall+ is working in the background it then starts to block my apps from accessing any other LAN host.

    To fix this problem all I need to do (but I do it every single time, and many times a scanning session) is to open AFWall+ UI and then go back to the app and retry connecting (usually 1-2 times).

    I can't add no logs, because AFWall+ crashes when I enable logging.

    For the iptables rules they are simple: block internet for every single app/service, and enable LAN access for every single app/service Also as I said, I enabled "allow inbound LAN connections" in the options.

    Running LineageOS 14.1 osprey on Motorola Gen3 (2015).

    Please advise.

    Review 
    opened by githubuser181226 0
  • [ISSUES]

    [ISSUES] "default whitelist" & "clone profile" problem

    "Default whitelist behaviour" problem (UI Preferences): Changes cannot be undone; once marked it remains so even after.

    "Clone profile" problem: Profiles cannot be duplicated, are only adopted without settings (completely empty).

    Firewall Logs https://drive.google.com/file/d/1tnxuoim2i-Gv1q1EHd44u4MfIm4Icaf7/view?usp=drivesdk

    Smartphone:

    • Device: [samsung galaxy s6] (rooted, magisk; LSposed framework)
    • Android OS: [LOS 18.1 unofficial]
    • AFWall+ (v3.5.3) (donate)

    Additional: It is not known whether the "whitelist problem" also occurs with the "blacklist presetting" because I didn't want to make any further settings that I can't undo.

    The same problems also exists at the same device with original STOCK ROM.

    Otherwise, I am very satisfied. Thanks for the great work!

    opened by 2DaysMayfly 0
  • [FEATURE] add option to change default OUTPUT policy to REJECT

    [FEATURE] add option to change default OUTPUT policy to REJECT

    Is your feature request related to a problem? Please describe. I'm surprised to find the default filter table OUTPUT chain policy is left to ALLOW. This can lead to accidental short-lived data leaks when restarting or after starting app until rules are loaded.

    Describe the solution you'd like Allow a preferences option to change the default OUTPUT policy from ACCEPT to REJECT

    Describe alternatives you've considered I'm blocking things during boot using magisk startup scripts by simply changing OUTPUT policy to REJECT. But then when afwall starts, it changes the policy back to ACCEPT and there could be miliseconds until all rules load and data traffic can leak

    Additional context It's fine if you make me type "YES I KNOW WHAT I'M DOING" before enabling this.

    opened by mailinglists35 0
  • [FEATURE] provide instructions to enable autostart before first unlock on more recent androids

    [FEATURE] provide instructions to enable autostart before first unlock on more recent androids

    Is your feature request related to a problem? Please describe. Please provide instructions to enable prevention of data leak.

    Describe the solution you'd like Please direct me to working android 10+ instructions to enable boot support.

    Describe alternatives you've considered the checkbox is greyed out. it tells me to have init.d or su.d. I google hours and try all crap, nothing works. super su apk says is outdated. magisk init.d module gives me a non-working Init.d-Injector-1.0.zip then I find out is wrongly compressed, I repack then it doesn't work. I find then a different file name Init.d-Injector_v3.1.zip, again it installs but doesn't work, I see no /system/etc/init.d, nor /system/etc/init is writable. there is a init.d scripts play store app that runs /storage/emulated/0/init.d but hey suprise that is encrypted and available only after first unlock.

    Additional context This is a bloody mess.

    opened by mailinglists35 4
  • (Again)No Internet after switching connection type (wifi - > mobile and around)  see#852

    (Again)No Internet after switching connection type (wifi - > mobile and around) see#852

    I am using afwall donate on my Oneplus6, oxygenOS 11.1.2.2 under Android 11 rooted with Magisk

    If I am switching from wifi to mobile data (4G) and visa versa everything is blocked ( no internet) and I need to switch off and on AFwall, for an internet-connection again. A similar problem was already known in 2018 see#852. Let me know to fix this problem. Thx Ben

    IPv4rules-switch->4g-NoInternet.log IPv4rules-Switch2Wifi-Nointernet.log IPv4rules-with-4Ginternet.log IPv4rules-with-wifi-internet.log Screenshot_20221124-124251

    Review 
    opened by BoeingBennie 0
Releases(v3.5.3)
  • v3.5.3(Jun 28, 2022)

    Changelog for Version 3.5.3

    • New: Enable delay when applying rules (Required for Android 11+ on some devices)
    • Fixes Applying rules with ipv6 error #1101 DNS leak when using external dns client. #1280 work profile apps not shown on Android 11+ Bluetooth tether import/export hanging
    • Use libsu for root detection.
    • Chinese menu issue.
    • Dropped xposed support! will be provided as separate module
    • Updated libraries and SDK (31)
    Source code(tar.gz)
    Source code(zip)
    AFWall_3.5.3_Free.apk(7.87 MB)
  • v3.5.2.1(May 21, 2021)

  • v3.5.2(May 16, 2021)

  • v3.5.1(Apr 19, 2021)

  • v3.5.0(Apr 10, 2021)

    Changelog

    Features

    • Show installed apps without internet permission
    • Default setting for installed app - Donate Only
    • Private DNS support on Android 9/10/11
    • Better support for Multi Profile/Island/Work Profile - Thanks to @n90p
    • Firewall logs engine rewritten with notification support.
    • General support for android 10 and 11 Bug Fixes:
    • Lots of logs related issues
    • Export rules with mode
    • Language option issue
    • Device rotation issue
    • Update support tools and build libraries(AndroidX)
    Source code(tar.gz)
    Source code(zip)
    AFWall_3.5.0-PS.apk(11.64 MB)
  • v3.5.0-BETA-1(Sep 5, 2020)

    Version 3.5.0-BETA-1

    • Feature: Show installed apps without internet permission
    • Feature: Default setting for installed app (Blacklist/whitelist) - Donate Only
    • Fix: Logs do not show app image
    • Fix: Better support for Multiprofile/Island/Workprofile - Thanks to @n90p
    • Fix: Log service startup issue
    • Update support tools and build libraries(AndroidX)
    • Target SDK to android 10
    Source code(tar.gz)
    Source code(zip)
    AFWall_3.5.0-BETA-1.apk(6.60 MB)
  • v3.4.0(Feb 9, 2020)

    Version 3.4.0

    • Feature: Bluetooth,USB tethering as separate rules - Thanks @nxzero
    • Feature: Clone columns (Copy rules from one column to other column)
    • Feature: Selectable Log target (LOG/NFLOG)
    • Fix: Log related issues
    • Fix: Notification related issues/Option removed!!
    • Main screen UI update - Thanks @vvimjam
    • Crash fixes and performance improvements
    • Translation updates.
    Source code(tar.gz)
    Source code(zip)
    AFWall+_3.4.0-PS.apk(6.54 MB)
  • v3.4.0-BETA2(Feb 1, 2020)

  • v3.4.0-BETA(Jan 13, 2020)

    Version 3.4.0-BETA1

    Feature: Bluetooth,USB tethering as separate rules - Thanks @nxzero
    Feature: Clone columns (Copy rules from one column to other column)
    Feature: Selectable Log target (LOG/NFLOG)
    Main screen UI update - Thanks @vvimjam
    Crash fixes and performance improvements
    
    Source code(tar.gz)
    Source code(zip)
    AFWall+_3.4.0-BETA-1.apk(6.50 MB)
  • v3.3.1(Nov 21, 2019)

  • v3.3.0(Nov 15, 2019)

    Bug Fixes:

    • MAJOR: Rules not applied properly (v4/v6)
    • Theme related bug with logs
    • Log related bugs on many devices
    • Boot rules are not applied on Pie and above
    • Disable/Enable of firewall issue
    • Crash on applying rules on fewer devices
    • Notification bug on fewer devices
    Source code(tar.gz)
    Source code(zip)
    AFWall+_3.3.0-PS.apk(6.48 MB)
  • v3.2.0(Oct 20, 2019)

    Version 3.2.0

    • Integrate basic themes(Light/Dark donate only)
    • Updated libraries
    • Better LOS support Bug Fixes:
    • Logservice stability
    • Notification related bugs
    • Tasker related bugs
    • Applying dialog issue
    • kernel in the logs even whitelisted(wip)
    • Possible memory leaks in async
    • mDNS and CLAT on core apps (Android 10)
    • Additional startup leak path for supersu
    Source code(tar.gz)
    Source code(zip)
    AFWall+_3.2.0-PS.apk(6.48 MB)
  • v3.2.0-BETA(Jul 3, 2019)

    BETA Version of 3.2.0

    Initial Themes (Dark/Light,Black(donate only)) Fix: Logservice stops after sometime Fix: Crash on LOS 16 due to permission Fix: Notification not getting cleared upon opening Fix: Tasker settings not applied bug due to crash Fix: Root progress showing on main screen(dismiss button added incase) Preferences now shows selected values

    Source code(tar.gz)
    Source code(zip)
    AFWall+_3.2.0-BETA-PS1.apk(6.41 MB)
  • v3.1.0(Feb 16, 2019)

    • Performance: Ipv4 and ipv6 rules apply time reduced by half
    • Ipv6 is enabled by default - Disable if not(under preferences->rules).
    • Fix: Tasker plugin issue after profile migration
    • Fix: Widget crashing issue
    • Fix: New app notification issue
    • Fix: Device boot rules issue
    • Fix: Duplicate app issue on oneplus devices
    • Fix: Tor related bug
    • Fix: Xposed module unable to download allowed apps.

    md5sum (AFWall+ Free) - cb2ada71a1abf007b400006c51dcc1d2 sha256sum - 4f7bbc6c8f201e330737ab52c40ac0aac7310f28bccd41ae4465a970187751da

    md5sum (AFWall+ Donate) - 00d03313985f5a3fd5a07b7a7409ab48 sha256sum - c6837c1f5eb3d93726c250fc3b0abf9b18adb29188fe5f0c310c25898c6a2a90

    Source code(tar.gz)
    Source code(zip)
    AFWall+_3.1.0-PS.apk(6.05 MB)
  • v3.0.4(Dec 24, 2018)

    Changelog:

    • Fix: domain names resolve
    • Fix: Removed notification dot on all notifications
    • Fix: Inbound option causing firewall disable functionality
    • Fix: Hang issue on log detail when ping/resolve
    • Removed SUPER_USER permission which is not relevant anymore
    Source code(tar.gz)
    Source code(zip)
    AFWall+_3.0.4-PS.apk(6.03 MB)
  • v3.0.3(Dec 16, 2018)

  • v3.0.2(Dec 15, 2018)

  • v3.0.1(Oct 22, 2018)

    Version 3.0.1

    • Fix: Status toggle widget 1x1
    • Fix: Ability to hide ongoing notification (Stop firewall and restart to hide after disable it in preferences)
    • Fix: Firewall error notification on oreo and above
    • Security: Tile toggle checks for password
    • User reported crashes
    • Updated translations
    Source code(tar.gz)
    Source code(zip)
    AFWall+.3.0.1-PS.apk(6.02 MB)
  • v3.0.0(Oct 17, 2018)

    Features:

    • Better support for nougat/oreo and pie.
    • Firewall toggle tile
    • Adaptive Icons
    • Notification channels
    • Tor support

    Bugs:

    • General bug fixes and crash reports.
    • Language selection bug
    • Filter selection bug
    • Compatible with magisk 17.x
    • Better handling of background process
    • Drops support for 4.x devices
    • Update languages
    • Updated libraries
    Source code(tar.gz)
    Source code(zip)
    AFWall+.3.0.0-PS.apk(6.02 MB)
  • v2.9.9(May 2, 2018)

    Version 2.9.9

    Support for dual apps-experimental DNS Hostname option on log toast(donate feature) Multiple memory leaks across screens. Block log notification now moved under individual app detail screen Enabled log cache for faster load. Widgets now ask for password if enabled (except status widget)

    Bugs: Shortcut open rules & preference screen without password. Fingerprint related issues SElinux deny for startup script User reported crash fixes. Updated string translations Added default system language option. Log notification name issue

    Source code(tar.gz)
    Source code(zip)
    AFWall_2.9.9-Free1.apk(5.99 MB)
  • v2.9.8(Jan 12, 2018)

    Changelog

    Option to disable notification when applying rules - Recommended to turn on ! Added magisk related information in the error report Fixed storage permission on export from rules Pixel 2 bug on netfilter error on start Rare preference crash on some devices Upgraded runtime to Java 8 Updated support libraries Fixed crashes upon loading Fixed user reported bugs Removed buggy quick apply -- Sincere Apologies! will add it after testing with various usecases

    Source code(tar.gz)
    Source code(zip)
    AFWall.2.9.8-PS.apk(6.14 MB)
  • v2.9.7(Nov 1, 2017)

    Features: Control default chains for ipv4 and ipv6 Quick apply - Donate ONLY! Shows count when applying rules Search by UID Improved su detect Ability to select init.d Use storage permission only required Xposed plugin for Nougat Library updates

    Bug Fixes: Added mount applet for busybox (init.d bug) Widget, tasker toggle issue for profiles Out of memory crashes Rare runtime crashes due to incompatible libraries Lots of minor bug fixes Possible fix for startup rules apply

    Source code(tar.gz)
    Source code(zip)
    AFWall.2.9.7-PS.apk(6.00 MB)
  • v2.9.6.1(Aug 17, 2017)

    Changelog

    • Removed BIND_ADMIN permission and related device admin feature as per Google's instruction - Will be introduced after analyzing the requirement
    • ANR issues due to busybox detection
    • Minor UI changes in tasker plugin
    • Tasker plugin related bugs related to disable/enable firewall
    • User reported crash fixes
    Source code(tar.gz)
    Source code(zip)
    AFWall.2.9.6.1-PS.apk(5.29 MB)
  • v2.9.6(Jul 26, 2017)

  • v2.9.5(Jun 4, 2017)

  • v2.9.4(Apr 2, 2017)

    Version 2.9.4

    • Fix log notification stops after sometime
    • Fix crash on log preferences.
    • mDNS notification can be turned-off
    • Bug in notification filterering
    • Added back x86/mips built-in binary support
    • Minor UI change for UID
    • Updated support Libraries
    • Updated translations

    Full changelog: https://goo.gl/YW20LY

    Source code(tar.gz)
    Source code(zip)
    AFWall.2.9.4-PS.apk(5.23 MB)
  • v2.9.3(Feb 26, 2017)

  • v2.9.2(Feb 22, 2017)

    Features

    • Log- Network options-Donate(TX @vzool)
    • Fingerprint support (TX @vzool)
    • Preserve Zoom size(+/-)
    • Profiles-delete/rename profiles(+)
    • Hardware search key Bugs
    • LAN issue on Nougat
    • Boot rules issue
    • Logservice start issue
    • Notification glitch on profile switch
    • Log notification filter button not showing
    • Optimizing logTarget detection
    • Removed toybox check due to ANR
      • etc. Misc
    • Busybox to latest
    • Removed x86/mips support
    • Support libraries,translation updates
    Source code(tar.gz)
    Source code(zip)
    AFWall.2.9.2-PS.apk(4.91 MB)
  • v2.9.1(Nov 28, 2016)

    • Boot/Connectivity change rules hung on some devices
    • Widget always display errors
    • Optimized number of su calls
    • Log Service does not work on some devices (Reboot or enable/disable logservice after install)
    • Update material dialog library
    • Updated translations
    Source code(tar.gz)
    Source code(zip)
    AFWall.2.9.1-PS.apk(4.58 MB)
  • v2.9.0(Nov 25, 2016)

    Version 2.9.0

    • Bug: Sometimes connection gets blocked
    • Bug: Sometimes logservice does not work after service terminated
    • Bug: Hang issue with phh super user
    • Bug: Applying rules dialog issue
    • Bug: Old logview clear issue
    • Ground work on notification filter
    • Code cleanup and removed older API related reference
    • Accessibility improvements
    • Feature: Block IPv6 - block all default chains of IPv6 to prevent leak
    • Feature: Preference enhancements related to rules
    • Feature: Application Shortcuts - Nougat 7.1
    • User reported crashes
    • Updated Translations

    Full Changelog - https://goo.gl/YW20LY

    Source code(tar.gz)
    Source code(zip)
    AFWall.2.9.0-PS.apk(4.56 MB)
Owner
robo-mo
robo-mo
NewsApp is a an android project based on modern Android application tech-stacks and MVVM architecture.

NewsApp NewsApp is a an android project based on modern Android application tech-stacks and MVVM architecture. This project is for focusing especially

null 1 Jan 14, 2022
GitHub client for Android based on the abandoned official app

ForkHub ForkHub started off as a fork of the official Android app from GitHub, and has since seen lots of improvements. You can see a comprehensive li

Jon Ander Peñalba 2.8k Dec 28, 2022
DNS-based Host Blocker (and lightweight ad blocker) for Android

DNS-Based Host Blocking for Android This is a DNS-based host blocker for Android. In the default configuration, several widely-respected host files ar

Julian Andres Klode 1.9k Jan 8, 2023
Geoponics is an E-Commerce Android Based Application Designed for Farmers As Well As Normal Users to Buy and Sell Agricultural goods!

Geoponics : E-Commerce Application Geoponics is an E-Commerce Android Based Aplication Designed for Farmers As Well As Normal Users to Buy and Sell Ag

Prasad 3 Aug 31, 2021
Android Demo App for League of legends's Champions based on MVVM design pattern

?? LOL-Champs If this project is useful, please give it a star ⭐ A Android Sample App with champion information of the League of Legends(LOL) using An

JunBi Kim 69 Dec 19, 2022
🦄 Android Pokedex-AR using ARCore, Sceneform, Hilt, Coroutines, Flow, Jetpack (Room, ViewModel, LiveData) based on MVVM architecture.

?? Android Pokedex-AR using ARCore, Sceneform, Hilt, Coroutines, Flow, Jetpack (Room, ViewModel, LiveData) based on MVVM architecture.

Jaewoong Eum 535 Dec 9, 2022
A Frida based tool that traces usage of the JNI API in Android apps.

jnitrace A Frida based tool to trace use of the JNI API in Android apps. Native libraries contained within Android Apps often make use of the JNI API

null 1.1k Jan 7, 2023
Android Sensor Based App

Sensor-Team Sensor Based Mobile Applications Make sure you have the latest version of android studio There are no api keys that need to be generated n

Georg Vassilev 0 Oct 15, 2021
Android app that show the palette of material theme based on your wallpaper

Material-You-Palette Android app that show the palette of material theme based on your wallpaper Show color blocks and names in on color Few Samples W

Yogesh Choudhary Paliyal 7 Oct 5, 2022
Blockchain-based android application

Android-Blockchain Blockchain based android application For Reference https://drive.google.com/drive/folders/1w-nPrcIONq1s4RY9yRXSqxcU6gaaE-uN?usp=sha

Akshat Sahijpal 0 Dec 23, 2021
🛡️ Android security (camera/microphone dots indicators) app using Hilt, Animations, Coroutines, Material, StateFlow, Jetpack based on MVVM architecture.

??️ Android security app using Hilt, Animations, Coroutines, Material, StateFlow, Jetpack (Room, ViewModel, Paging, Security, Biometrics, Start-up) based on MVVM architecture.

null 639 Jan 6, 2023
Simple Android web-view-based application. The primary purpose is to show the website in Kiosk mode.

Kiosk mode app Simple Android web-view-based application. The primary purpose is to show the website in Kiosk mode. By default, the app works in Scree

Mykola Kichatov 1 Oct 25, 2022
Android multimodule project based on Kotlin, MVVM, SOLID, flow, coroutines and paging3.

TVMaze David Ferrándiz Features Retrieve TVMaze shows in a grid. See more information about the show in a new screen Tech Kotlin Retrofit Modularizati

David Ferrandiz 1 Nov 18, 2022
A monotone line-based icon pack for android

Arcticons (Arctic icons) is a line-based icon pack forked from Frost but rebuild with consistent sizing and adjustments specifically for lines in mind

Donno 413 Jan 2, 2023
UIPresenter library for android view-based UI presentation

UIPresenter This android library is like a tour guide for your app's Views. It h

Germain Kevin 21 Sep 21, 2022
Android library for Tesla Authentication based on Tesla JSON API (Unofficial)

TeslaAndroidAuth Lightweight Android library for Tesla SSO Authentication based

Octopus Energy 3 Jan 10, 2022
A simple Android webbrowser based on webview.

"FOSS Browser" is a fully free (as in freedom) open source Android browser: privacy-friendly with a modern user interface. - Your privacy - your data.

Gaukler Faun 931 Dec 27, 2022
NosoWallet for android, based on NosoLite of noso project

NosoWallet-Android NosoWallet for android, based on: https://github.com/Noso-Project/NosoLite Running NOSOmobile You just need to download the latest

Noso Project 7 Jun 22, 2022