Skip to content

Commit

Permalink
various bug fixes and FC issues and translations
Browse files Browse the repository at this point in the history
  • Loading branch information
ukanth committed Aug 21, 2014
1 parent 9b898b3 commit 261a7b5
Show file tree
Hide file tree
Showing 14 changed files with 147 additions and 98 deletions.
6 changes: 3 additions & 3 deletions AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,10 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="dev.ukanth.ufirewall"
android:versionCode="170"
android:versionName="1.3.4">
android:versionCode="171"
android:versionName="1.3.4.1">

<!-- Android 2.2 up to 4.x -->
<!-- Android 2.3 up to 3.x -->
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
Expand Down
52 changes: 12 additions & 40 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ Index
* [Upgrading](#upgrading)
* [Permissions](#permissions)
* [Frequently asked questions](#frequently-asked-questions)
* [ToDo](#todo)
* [License](#license)
* [Acknowledgements](#acknowledgements)
* [Compile AFWall+](#compile-afwall+)
Expand All @@ -41,23 +40,20 @@ Features
* No advertisements
* Choose your preferred language
* Search for installed applications
* Get a notification about newly installed application
* Get a notification about new installed application
* Blocked packets notification and filter
* Device Admin Support (Protect AFWall+ from uninstall)
* Professional skills not required for configuration
* Easy to add your own rules with a custom script support(required iptables knowledge)
* Easy to manage your rules with a custom script
* For any (stock) variant of Android version 2.2 - 4.4.4 (ICS, JellyBean, KitKat)
* IPv4/IPv6 support
* Ipv4/Ipv6 support
* LAN-, VPN-, Tether-, Roaming-Control support
* Tasker and Locale support
* Firewall Logs service
* Multi-User (multiple-profiles) support
* Build-In Iptables/Busybox
* Export and Import rules and preferences
* Export and Import rules (Import All Rules needs donate version)
* Option to prevent data leaks during boot (REQUIRES init.d support or S-OFF)
* Supports MIPS/x86/ARM
* select all/revert rules for applications
* Highlight/Filter system applications

Bug Reports
--------
Expand All @@ -83,7 +79,7 @@ I do not recommend using AFWall+ in combination with any of the similar solution
Upgrading
---------

* **Make a backup** (e.g. with Titanium Backup) or using AFWall+ export
* **Make a backup** (e.g. with Titanium Backup)
* **Do not remove the previous version** (or else your settings will maybe get lost)
* Download the new version
* Install the new version over the previous version
Expand All @@ -94,42 +90,18 @@ 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.
* **ACCESS_SUPERUSER** : Standard to support Superuser/SuperSU (by Koush/Chainfire).
* **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](http://stackoverflow.com/questions/17252018/getting-my-lan-ip-address-192-168-xxxx-ipv4).
* **ACCESS_WIFI_STATE** : Added to detect tether state.
* 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.
* ACCESS_SUPERUSER: Standard to support Superuser/SuperSU (by Koushik/Chainfire).
* 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](http://stackoverflow.com/questions/17252018/getting-my-lan-ip-address-192-168-xxxx-ipv4).
* ACCESS_WIFI_STATE : Added to detect tether state.

Frequently asked questions
--------------------------

Having problems with AFWall+? Check out the [FAQ](https://github.com/ukanth/afwall/wiki/FAQ) before reporting a bug or problem that may already be known.

ToDo
----

- [x] Better GUI<i>(1.0.1a)</i>
- [x] Roaming "R" option (like Avast Firewall)<i>(1.0.2a)</i>
- [x] Flush/Reset iptables rules from UI<i>(1.0.2a)</i>
- [x] Save & Load Profiles/Rules<i>(1.0.3a)</i>
- [x] Full i18n support<i>(1.0.3a)</i>
- [x] View iptables rules and logging in a clear view<i>(1.0.4a)</i>
- [x] Support for [Tasker](http://tasker.dinglisch.net/) & [Locale](http://www.twofortyfouram.com/)<i>(1.0.4a)</i>
- [x] Multiple Profiles<i>(1.0.7a)</i>
- [x] Support for IPv6<i>(1.2.4)</i>
- [x] Support for only within LAN/WAN/Tether<i>(1.2.5)</i>
- [x] Support NFLOG<i>(1.2.6)</i>
- [x] Support for x86/MIPS/ARM devices<i>(1.2.7)</i>
- [x] #267, #268<i>(1.3.3)</i>
- [ ] Kernel logs and mysterious behind it!
- [ ] Store logs in a separate DB for a detailed report
- [ ] iptables builder (like blocking websites/ip addresses etc.,)
- [ ] Reduce Application size
- [ ] Timer for re-enable firewall after disabling AFWall+
- [ ] Improve the widget
- [ ] Fix all bugs [reported by users](https://github.com/ukanth/afwall/issues)

License
-------

Expand Down Expand Up @@ -204,7 +176,7 @@ Compile AFWall+
Prerequisites:

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

Expand Down
29 changes: 29 additions & 0 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
Todo
=====

List
--------

- [x] Better GUI <i>(1.0.1a)</i>
- [x] Roaming "R" option (like Avast Firewall) <i>(1.0.2a)</i>
- [x] Flush/Reset iptables rules from UI <i>(1.0.2a)</i>
- [x] Save & Load Profiles/Rules <i>(1.0.3a)</i>
- [x] Full i18n support <i>(1.0.3a)</i>
- [x] View iptables rules and logging in a clear view <i>(1.0.4a)</i>
- [x] Support for [Tasker](http://tasker.dinglisch.net/) & [Locale](http://www.twofortyfouram.com/) <i>(1.0.4a)</i>
- [x] Multiple Profiles <i>(1.0.7a)</i>
- [x] Support for IPv6 <i>(1.2.4)</i>
- [x] Support for only within LAN/WAN/Tether <i>(1.2.5)</i>
- [x] Support NFLOG <i>(1.2.6)</i>
- [x] Support for x86/MIPS/ARM devices <i>(1.2.7)</i>
- [x] #267, #268 <i>(1.3.3)</i>
- [ ] Uninstall application from list window (or open/manage application from list)
- [ ] Kernel logs and mysterious behind it!
- [ ] Add a hardware search key
- [ ] Store logs in a separate DB for a detailed report
- [ ] iptables builder (like blocking websites/ip addresses etc.,)
- [ ] Reduce Application size
- [ ] Rewrite the import/export logic
- [ ] Timer for re-enable firewall after disabling AFWall+
- [ ] Improve the widget
- [ ] Fix all bugs [reported by users](https://github.com/ukanth/afwall/issues?state=open)
14 changes: 7 additions & 7 deletions res/values-de/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.net-->
<!--Generated by crowdin.com-->
<resources>
<string name="app_name">AFWall+ </string>
<string name="app_name_donate">AFWall+ (Spenden)</string>
Expand All @@ -17,8 +17,8 @@
<string name="error_binary">Fehler beim Installieren der Binärdateien</string>
<string name="error_migration">Fehler beim Migrieren der alten Einstellungen!</string>
<string name="error_refresh">Fehler beim Aktualisieren der IPTables</string>
<string name="error_apply">Fehler beim Anwenden der IPTables Regeln</string>
<string name="error_fetch">Fehler beim Abrufen der IPTables Regeln</string>
<string name="error_apply">Fehler beim Anwenden der IPTables-Regeln</string>
<string name="error_fetch">Fehler beim Abrufen der IPTables-Regeln</string>
<string name="error_su">Konnte keine Rootrechte erwerben.\n Sie benötigen ein gerootetes Gerät um AFWall+ zu nutzen.\n\n Wenn das Gerät bereits gerootet ist, stellen Sie bitte sicher, das AFWall+ ausreichend Rechte besitzt, um \"su\" ausführen zu können.\n</string>
<string name="error_common">Fehler: </string>
<string name="all_item">(Alle Apps) - Gleiche Funktion wie \'Alle Apps\' markieren</string>
Expand All @@ -32,7 +32,7 @@
<string name="flushed">Regeln gesäubert</string>
<string name="show_log">Firewall-Protokoll</string>
<string name="clear_log">Protokoll löschen</string>
<string name="applying_rules">IPTables Regel(n) anwenden...</string>
<string name="applying_rules">IPTables-Regel(n) anwenden...</string>
<string name="saving_rules">IPTables-Regel(n) speichern...</string>
<string name="rules_applied">Regeln erfolgreich angewendet</string>
<string name="rules_saved">Regeln erfolgreich gespeichert</string>
Expand Down Expand Up @@ -67,11 +67,11 @@
<string name="custom_script2_info"> \n<b>Benutzerdefiniertes Shutdown-Skript</b>\nSie können auch ein eigenes Skript festlegen, das ausgeführt wird, wenn die Firewall <b>deaktiviert</b> ist:</string>
<string name="unsaved_changes">Ungesicherte Änderungen</string>
<string name="unsaved_changes_message">Sie haben ungesicherte Änderungen.\nMöchten Sie diese speichern oder verwerfen?</string>
<string name="showrules_title">IPTables Regeln</string>
<string name="showrules_title">IPTables-Regeln</string>
<string name="copy">Kopieren</string>
<string name="copied">Kopiert</string>
<string name="Search">Suchen</string>
<string name="flushRulesConfirm">Alle IPTables-Regeln werden gelöscht! Trotzdem fortfahren ?</string>
<string name="flushRulesConfirm">Alle IPTables-Regeln werden gelöscht! Trotzdem fortfahren?</string>
<string name="overrideRules">Dies überschreibt die vorhandenen Regeln! Möchten Sie die Regeln importieren?</string>
<string name="notification_new">Neue Anwendung installiert.</string>
<string name="notification_new_package">Internet-Berechtigung konfigurieren</string>
Expand Down Expand Up @@ -187,7 +187,7 @@
<string name="device_admin_disabled">AFWall+ Geräte-Admin deaktiviert</string>
<string name="device_admin_on_disable">Bitte in die Geräte-Administrator Einstellungen gehen, um AFWall+ zu deaktivieren</string>
<string name="exp_prefs_title">Experimentell</string>
<string name="startup_service">Regeln werden angewendet! Bitte warten...</string>
<string name="startup_service">Regeln werden angewendet. Bitte warten!</string>
<string name="fixleakTitle">Start-Datenleck Fix</string>
<string name="fixleakSummary">Verhindert Datenlecks beim Systemstart. ROM muss init.d unterstützen. HTC Geräte müssen für S-OFF konfiguriert sein</string>
<string name="enableInboundTitle">Erlaube eingehende Verbindungen</string>
Expand Down
2 changes: 1 addition & 1 deletion res/values-es/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.net-->
<!--Generated by crowdin.com-->
<resources>
<string name="app_name">AFWall+</string>
<string name="app_name_donate">AFWall + (Donacion)</string>
Expand Down
4 changes: 2 additions & 2 deletions res/values-in/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.net-->
<!--Generated by crowdin.com-->
<resources>
<string name="app_name">AFWall+ </string>
<string name="app_name_donate">AFWall+ (Donasi)</string>
Expand Down Expand Up @@ -64,7 +64,7 @@
<string name="custom_script_removed">Skrip telah dihapus</string>
<string name="custom_script_error">gagal menyimpan skrip</string>
<string name="custom_script_info"><b>Masukkan skrip anda sendiri</b> \n<i>(Kosongkan untuk menghapus)</i> \nUntuk info skrip, klik <a href="https://github.com/ukanth/afwall/wiki/CustomScripts">di sini</a>.</string>
<string name="custom_script2_info"> \n<b>Buat skrip saat dimatikan</b> \nAnda juga dapat membuat skrip saat firewall <b>simatikan</b>:</string>
<string name="custom_script2_info"> \n<b>Buat skrip saat dimatikan</b> \nAnda juga dapat membuat skrip saat firewall <b>dimatikan</b>:</string>
<string name="unsaved_changes">Perubahan blm disimpan</string>
<string name="unsaved_changes_message">Anda belum menyimpan.\nAnda ingin menerapkan atau membuang?</string>
<string name="showrules_title">Aturan IPtables</string>
Expand Down
2 changes: 1 addition & 1 deletion res/values-ru/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.net-->
<!--Generated by crowdin.com-->
<resources>
<string name="app_name">AFWall+ </string>
<string name="app_name_donate">AFWall+ (Donate)</string>
Expand Down
2 changes: 1 addition & 1 deletion res/values-sl/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.net-->
<!--Generated by crowdin.com-->
<resources>
<string name="app_name">AFWall+</string>
<string name="app_name_donate">AFWall+ (plačljiva verzija)</string>
Expand Down
24 changes: 12 additions & 12 deletions res/values-zh-rCN/strings.xml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.net-->
<!--Generated by crowdin.com-->
<resources>
<string name="app_name">AFWall+ </string>
<string name="app_name_donate">AFWall+ (Donate)</string>
<string name="app_name_donate">AFWall+ (捐赠版)</string>
<string name="title_disabled">AFWall+(已禁用)</string>
<string name="whitelist_array_item">白名单(允许选中)</string>
<string name="blacklist_array_item">黑名单(阻止选中)</string>
Expand Down Expand Up @@ -76,7 +76,7 @@
<string name="flushRulesConfirm">这将清除所有的 iptables 规则!您想要继续吗?</string>
<string name="overrideRules">这将覆盖现有的规则! 您想要导入规则吗?</string>
<string name="notification_new">新应用程序已安装</string>
<string name="notification_new_package">Configure internet permission</string>
<string name="notification_new_package">配置互联网权限</string>
<string name="confirmMsg">将要禁用防火墙!是否要继续?</string>
<string name="apply">应用</string>
<string name="discard">放弃</string>
Expand Down Expand Up @@ -147,7 +147,7 @@
<string name="profile1">配置 1</string>
<string name="profile2">配置 2</string>
<string name="profile3">配置 3</string>
<string name="reapply_profile">Reapply Profile rules</string>
<string name="reapply_profile">重新应用配置文件规则</string>
<string name="lan_title">局域网控制</string>
<string name="lan_summary">启用此项以单独地从WiFi权限中控制局域网权限</string>
<string name="iptables_pref">IPtables 的二进制文件</string>
Expand Down Expand Up @@ -247,23 +247,23 @@
<string name="enable_dns">由netd启用DNS</string>
<string name="disable_dns">由netd禁用DNS</string>
<string name="dns_proxy_title">DNS 代理</string>
<string name="dns_proxy_summary">DNS lookups via netd on JB 4.3+. Disable this will block the internet on Android 4.3+</string>
<string name="dns_proxy_summary">JB 4.3及以上系统通过netd查找DNS。禁用此项将阻止4.3及以上系统的网络连接</string>
<string name="tasker_lable">AFWall+ Tasker 插件</string>
<string name="enable">启用</string>
<string name="disable">禁用</string>
<string name="filters_apps_title">Notification Filter</string>
<string name="filters_apps_title">通知过滤器</string>
<string name="apply_color">点击颜色以应用</string>
<string name="binaries">二进制文件</string>
<string name="exports">导出</string>
<string name="imports">导入</string>
<string name="invalid_profile">无效配置文件名</string>
<string name="donate_only">此功能仅供捐赠版使用</string>
<string name="buy_donate">购买捐赠版</string>
<string name="unlock_donate"> tap to unlock donate</string>
<string name="donate_support">You can now use donate features!</string>
<string name="unlock_donate"> 点击以解锁捐赠版功能</string>
<string name="donate_support">您现在可以使用捐赠版的功能 !</string>
<string name="donate_thanks">感谢您的支持</string>
<string name="activeNotification">Show notification icon</string>
<string name="activeNotification_summary">Display permanent icon in notification bar</string>
<string name="active">Firewall is running</string>
<string name="inactive">Firewall is disabled</string>
<string name="activeNotification">显示通知图标</string>
<string name="activeNotification_summary">在通知栏显示常驻图标</string>
<string name="active">防火墙运行中</string>
<string name="inactive">防火墙已禁用</string>
</resources>
24 changes: 12 additions & 12 deletions res/values-zh/strings.xml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.net-->
<!--Generated by crowdin.com-->
<resources>
<string name="app_name">AFWall+ </string>
<string name="app_name_donate">AFWall+ (Donate)</string>
<string name="app_name_donate">AFWall+ (捐赠版)</string>
<string name="title_disabled">AFWall+(已禁用)</string>
<string name="whitelist_array_item">白名单(允许选中)</string>
<string name="blacklist_array_item">黑名单(阻止选中)</string>
Expand Down Expand Up @@ -76,7 +76,7 @@
<string name="flushRulesConfirm">这将清除所有的 iptables 规则!您想要继续吗?</string>
<string name="overrideRules">这将覆盖现有的规则! 您想要导入规则吗?</string>
<string name="notification_new">新应用程序已安装</string>
<string name="notification_new_package">Configure internet permission</string>
<string name="notification_new_package">配置互联网权限</string>
<string name="confirmMsg">将要禁用防火墙!是否要继续?</string>
<string name="apply">应用</string>
<string name="discard">放弃</string>
Expand Down Expand Up @@ -147,7 +147,7 @@
<string name="profile1">配置 1</string>
<string name="profile2">配置 2</string>
<string name="profile3">配置 3</string>
<string name="reapply_profile">Reapply Profile rules</string>
<string name="reapply_profile">重新应用配置文件规则</string>
<string name="lan_title">局域网控制</string>
<string name="lan_summary">启用此项以单独地从WiFi权限中控制局域网权限</string>
<string name="iptables_pref">IPtables 的二进制文件</string>
Expand Down Expand Up @@ -247,23 +247,23 @@
<string name="enable_dns">由netd启用DNS</string>
<string name="disable_dns">由netd禁用DNS</string>
<string name="dns_proxy_title">DNS 代理</string>
<string name="dns_proxy_summary">DNS lookups via netd on JB 4.3+. Disable this will block the internet on Android 4.3+</string>
<string name="dns_proxy_summary">JB 4.3及以上系统通过netd查找DNS。禁用此项将阻止4.3及以上系统的网络连接</string>
<string name="tasker_lable">AFWall+ Tasker 插件</string>
<string name="enable">启用</string>
<string name="disable">禁用</string>
<string name="filters_apps_title">Notification Filter</string>
<string name="filters_apps_title">通知过滤器</string>
<string name="apply_color">点击颜色以应用</string>
<string name="binaries">二进制文件</string>
<string name="exports">导出</string>
<string name="imports">导入</string>
<string name="invalid_profile">无效配置文件名</string>
<string name="donate_only">此功能仅供捐赠版使用</string>
<string name="buy_donate">购买捐赠版</string>
<string name="unlock_donate"> tap to unlock donate</string>
<string name="donate_support">You can now use donate features!</string>
<string name="unlock_donate"> 点击以解锁捐赠版功能</string>
<string name="donate_support">您现在可以使用捐赠版的功能 !</string>
<string name="donate_thanks">感谢您的支持</string>
<string name="activeNotification">Show notification icon</string>
<string name="activeNotification_summary">Display permanent icon in notification bar</string>
<string name="active">Firewall is running</string>
<string name="inactive">Firewall is disabled</string>
<string name="activeNotification">显示通知图标</string>
<string name="activeNotification_summary">在通知栏显示常驻图标</string>
<string name="active">防火墙运行中</string>
<string name="inactive">防火墙已禁用</string>
</resources>
9 changes: 7 additions & 2 deletions src/dev/ukanth/ufirewall/DataDumpActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -69,10 +69,15 @@ public abstract class DataDumpActivity extends SherlockActivity {

protected abstract void populateData(final Context ctx);

protected void setData(String data) {
protected void setData(final String data) {
this.dataText = data;
scaleGesture = (TextView) findViewById(R.id.rules);
scaleGesture.setText(data);
runOnUiThread(new Runnable() {
@Override
public void run() {
scaleGesture.setText(data);
}
});
}


Expand Down
Loading

0 comments on commit 261a7b5

Please sign in to comment.