diff --git a/ADBLOCKING.md b/ADBLOCKING.md index 1e844b0e..49a25857 100644 --- a/ADBLOCKING.md +++ b/ADBLOCKING.md @@ -39,3 +39,7 @@ See [here](https://github.com/M66B/NetGuard/issues/277) for alternative hosts fi NetGuard does not concatenate hosts files, so you will have to use a source which does this for you or do it yourself. You can check the number of hosts (domains) imported by pulling the NetGuard notification down using two fingers. + +Apart from using a hosts file, you can block most in-app ads by blocking this address for Google Play services: + +*googleads.g.doubleclick.net/443* diff --git a/FAQ.md b/FAQ.md index f5476ed9..fdecf1fb 100644 --- a/FAQ.md +++ b/FAQ.md @@ -157,9 +157,10 @@ NetGuard requires at least Android 4.0, so it is not available in the Google Pla **(19) Why does application XYZ still have internet access?** If you block internet access for an application, there is no way around it. -However, applications could access the internet through other applications. -Google Play services is handling push messages for most applications for example. +However, applications could access the internet through other (system) applications. +Google Play services is handling incoming push messages for most applications for example. You can prevent this by blocking internet access for the other application as well. +This can best be diagnosed by checking the global access log (three dot menu, Show log). Note that some applications keep trying to access the internet, which is done by sending a connection request packet. This packet goes into the VPN sinkhole when internet access for the application is blocked. @@ -317,9 +318,9 @@ however they need to be generally usable to be included. As a workaround you can use the export/import function to apply specific settings in specific circumstances. -**(34) Can you add the condition 'when on foreground'?** +**(34) Can you add a condition 'when on foreground' or 'when active'?** -Recent Android versions do not allow an application to query if other applications are in the foreground or background +Recent Android versions do not allow an application to query if other applications are in the foreground/background or active/inactive without holding an [additional privacy violating permission](https://developer.android.com/reference/android/Manifest.permission.html#PACKAGE_USAGE_STATS) and at the expense of extra battery usage (because periodic polling is required) anymore, so this cannot be added without significant disadvantages. @@ -367,12 +368,48 @@ See [here](http://forum.xda-developers.com/showpost.php?p=67892427&postcount=303 On most devices, NetGuard will keep running in the background with its foreground service. On some devices (in particular some Samsung models), where there are lots of applications competing for memory, Android may still stop NetGuard as a last resort. Unfortunately this cannot be fixed from NetGuard, and can be considered a shortcoming of the device and/or as a bug in Android. +You can workaround this problem by enabling the watchdog in the NetGuard advanced options to check every 10-15 minutes. **(39) How does a VPN based firewall differ from a iptables based firewall?** See this [Stack Exchange question](http://android.stackexchange.com/questions/152087/any-security-difference-between-root-based-firewall-afwall-and-non-root-based). + +**(40) Can you add schedules?** + +Besides not being trivial to add, schedule are in my opion not a good idea, since time is not a good rule condition. +A rule condition like *When screen is on* is a better and more straightforward condition. +Therefore schedules will not be added, but you are welcome to propose other new conditions. + + +**(41) Can you add wildcards?** + +Wildcards to allow/block addresses would have a significant performance and usability impact and will therefore not be added. + + +**(42) Why is permission ... needed?** + +* INTERNET ('*Full network access*'): to forward allowed (filtered) traffic to the internet +* ACCESS_NETWORK_STATE ('*View network connections*'): to check if the device is connected to the internet through Wi-Fi +* READ_PHONE_STATE ('*Device ID & call information*'): to detect mobile network changes, see [here](http://forum.xda-developers.com/showpost.php?p=64107371&postcount=489) for more details +* ACCESS_WIFI_STATE ('*Wi-Fi connection information*'): to detect Wi-Fi network changes +* RECEIVE_BOOT_COMPLETED ('*Run at startup*'): to start the firewall when booting the device +* WAKE_LOCK ('*Prevent device from sleeping*'): to reliably reload rules in the background on connectivity changes +* READ/WRITE_EXTERNAL_STORAGE ('*Photos/Media/Files*'): to export/import settings on Android versions before 4.4 (KitKat) (there is no need to grant this permission on later Android versions) +* VIBRATE: to give feedback on widget tap +* BILLING: to use in-app billing + + +**(43) I get 'This app is causing your device to run slowly'** + +This message is display by the *Smart Manager*, +but actually it is the 'Smart' Manager application itself which is causing delays and lags. +Some links: + +* [Smart Manager complaining about LastPass](https://www.reddit.com/r/GalaxyS6/comments/3htu2y/smart_manager_cmoplaining_about_lastpass/) +* [Disable Smart Manager?](http://forums.androidcentral.com/samsung-galaxy-s4/595483-disable-smart-manager.html) +
**If you didn't find the answer to your question, you can ask your questions [in this forum](http://forum.xda-developers.com/showthread.php?t=3233012) or contact me directly [by e-mail](mailto:marcel+netguard@faircode.eu)**. diff --git a/README.md b/README.md index 7663d0ca..f3a0a6f2 100644 --- a/README.md +++ b/README.md @@ -186,18 +186,17 @@ Frequently Asked Questions (FAQ) [**(39) How does a VPN based firewall differ from a iptables based firewall?**](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ39) -Permissions ------------ + +[**(40) Can you add schedules?**](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ40) -* INTERNET ('*Full network access*'): to forward allowed (filtered) traffic to the internet -* ACCESS_NETWORK_STATE ('*View network connections*'): to check if the device is connected to the internet through Wi-Fi -* READ_PHONE_STATE ('*Device ID & call information*'): to detect mobile network changes, see [here](http://forum.xda-developers.com/showpost.php?p=64107371&postcount=489) for more details -* ACCESS_WIFI_STATE ('*Wi-Fi connection information*'): to detect Wi-Fi network changes -* RECEIVE_BOOT_COMPLETED ('*Run at startup*'): to start the firewall when booting the device -* WAKE_LOCK ('*Prevent device from sleeping*'): to reliably reload rules in the background on connectivity changes -* READ/WRITE_EXTERNAL_STORAGE ('*Photos/Media/Files*'): to export/import settings on Android versions before 4.4 (KitKat) (there is no need to grant this permission on later Android versions) -* VIBRATE: to give feedback on widget tap -* BILLING: to use in-app billing + +[**(41) Can you add wildcards?**](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ41) + + +[**(42) Why is permission ... needed?**](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ42) + + +[**(43) I get 'This app is causing your device to run slowly'**](https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ43) Support ------- diff --git a/app/app.iml b/app/app.iml index 1b991d38..4a4784c1 100644 --- a/app/app.iml +++ b/app/app.iml @@ -64,14 +64,6 @@ - - - - - - - - @@ -80,6 +72,14 @@ + + + + + + + + @@ -104,14 +104,6 @@ - - - - - - - - @@ -120,6 +112,14 @@ + + + + + + + + diff --git a/app/build.gradle b/app/build.gradle index 4840042b..e9df7e54 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'com.android.model.application' model { android { compileSdkVersion = 24 - buildToolsVersion = "24.0.1" + buildToolsVersion = "24.0.2" defaultConfig { applicationId = "eu.faircode.netguard" diff --git a/playstore/PLAY-es.md b/playstore/PLAY-es.md index ba73ee09..9fe1246b 100644 --- a/playstore/PLAY-es.md +++ b/playstore/PLAY-es.md @@ -58,6 +58,6 @@ Si te gusta ayudar a personas con menor fluidez de Inglés, puedes ayudar a trad Si te gusta probar las nuevas características, puedes participar en el programa de prueba: https://play.google.com/apps/testing/eu.faircode.netguard -Todos los permisos requeridos se detallan aquí: https://github.com/M66B/NetGuard/blob/master/README.md#permissions +Todos los permisos requeridos se detallan aquí: https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ42 El código fuente está disponible aquí: https://github.com/M66B/NetGuard diff --git a/playstore/PLAY-hi.md b/playstore/PLAY-hi.md index 9a2a007f..b374cda9 100644 --- a/playstore/PLAY-hi.md +++ b/playstore/PLAY-hi.md @@ -58,6 +58,6 @@ Long description आप नई सुविधाओं का परीक्षण करना चाहते हैं, तो आप परीक्षण कार्यक्रम में भाग ले सकते हैं: https://play.google.com/apps/testing/eu.faircode.netguard -सभी आवश्यक अनुमतियों यहाँ वर्णित हैं: https://github.com/M66B/NetGuard/blob/master/README.md#permissions +सभी आवश्यक अनुमतियों यहाँ वर्णित हैं: https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ42 स्रोत कोड यहाँ उपलब्ध है: https://github.com/M66B/NetGuard diff --git a/playstore/PLAY-ro.md b/playstore/PLAY-ro.md index 134444f4..e880a3c3 100644 --- a/playstore/PLAY-ro.md +++ b/playstore/PLAY-ro.md @@ -58,6 +58,6 @@ Daca vrei sa ii ajuti pe cei ce nu vorbesc limba engleza, poti ajuta la traducer Daca doriti sa testati caracteristile in dezvoltare ale aplicatiei, va puteti alatura programului de testare: https://play.google.com/apps/testing/eu.faircode.netguard -Toate permisiunile necesare sunt detaliate aici: https://github.com/M66B/NetGuard/blob/master/README.md#permissions +Toate permisiunile necesare sunt detaliate aici: https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ42 Codul sursa este disponibil aici: https://github.com/M66B/NetGuard diff --git a/playstore/PLAY-ta.md b/playstore/PLAY-ta.md index 3afa2688..af539d78 100644 --- a/playstore/PLAY-ta.md +++ b/playstore/PLAY-ta.md @@ -58,6 +58,6 @@ Long description நீங்கள் புதிய அம்சங்களை சோதிக்க விரும்பினால், நீங்கள் சோதனை திட்டம் பங்கேற்க முடியும்: https://play.google.com/apps/testing/eu.faircode.netguard -அனைத்து தேவையான அனுமதிகள் இங்கு விவரிக்கப்பட்டுள்ளன: https://github.com/M66B/NetGuard/blob/master/README.md#permissions +அனைத்து தேவையான அனுமதிகள் இங்கு விவரிக்கப்பட்டுள்ளன: https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ42 மூல குறியீடு இங்கே கிடைக்கும்: https://github.com/M66B/NetGuard diff --git a/playstore/PLAY.md b/playstore/PLAY.md index 99cea5f0..b8b2dbc8 100644 --- a/playstore/PLAY.md +++ b/playstore/PLAY.md @@ -58,6 +58,6 @@ If you like to help people less fluent in English, you can help translate NetGua If you like to test new features, you can participate in the test program: https://play.google.com/apps/testing/eu.faircode.netguard -All required permissions are described here: https://github.com/M66B/NetGuard/blob/master/README.md#permissions +All required permissions are described here: https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ42 The source code is available here: https://github.com/M66B/NetGuard