Adhell3 is merely an app that is using the Samsung Knox SDK APIs.
In order to use these APIs, the Knox SDK and an ELM Development license key are needed.
These are Samsung's properties which are not available in this repository and therefore they need to be downloaded and obtained by the developer after accepting the agreement with by Samsung.
I am only making adhell3 available as a source code project. When a developer assembles/compiles an apk from this project, the developer is then responsible for how that apk and the proprietary material it contains will be used and distributed. I don't take any responsibilities for any damages caused by this app.
The Knox SDK can be downloaded here: https://seap.samsung.com/sdk/knox-android
The ELM License key can be obtained here: https://seap.samsung.com/license-keys/generate/edu
The API can be found here: https://seap.samsung.com/api-references/android/reference/packages.html
Official Discord: https://discord.gg/hfreZum
Adhell3 is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
You should have received a copy of the license along with this work. If not, see http://creativecommons.org/licenses/by-nc/4.0/.
The original Adhell was developed by a Samsung employee. After he was forced to remove the code from the internet by Samsung, FiendFyre and others stepped up by providing Adhell2, SABS, and similar projects but since they were distributed as apks containing proprietary Samsung material, they had to be discontinued.
Adhell3 is an extension of the former Adhell2 apps with additional features, and available publicly as source code for use by any Samsung developer.
Mobile and Wi-Fi access disabler
Disable internet access when on mobile or/and Wi-Fi for specific apps. This can be useful to avoid watching videos accidentally by using mobile data.
Custom deny firewall rule
This can be used for example to define a custom firewall rule to block ads for Chrome-based apps on port 53 for all IP addresses:
com.sec.android.app.sbrowser|*|53for Samsung Internet, etc.
Whitelist a domain for a specific app
For when you want to block a domain systemwide, but you still need this domain for a particular app that won't work without it.
Instead of whitelisting the app, you can just whitelist that domain for this app.
Example: Block the domain
graph.facebook.comsystemwide, but allows it for Facebook Messenger so that it can be used for login:
Support local host source
A domains lists (provider) file can be located in internal or external storage on your device.
Show the content of host source
Show the list of all potentially blocked domains from all active host sources combined.
This can be useful to check whether a particular domain is in the list.
Backup and restore database
Backup the content of the database on internal storage so that later it can be used to restore the database if the database is somehow damaged.
DNS per application basis
Set custom DNS for selected apps. Only user apps are supported.
- Download the script from https://gitlab.com/fusionjack/adhell3-scripts
- Follow the instruction in the README
Change the default 15k domain limit
Make license key available when activating Adhell3
- If you use this option, beware that when you distribute your app, the keys will be in plain text
- This is just for convenience so that you don't need to transfer your keys to your phone manually, and is only useful on a new installation
- Prefix all domains (with the exception of Filter Lists) with * or nothing.
- If you choose not to define a prefixing option, domains will not be prefixed.
domain.prefix=true-> prefix all domains with
domain.prefix=false-> don't prefix anything, keep domains as they are
- The default is: nothing -> no prefix
- Beware that enabling some hidden features may cause the device to malfunction if they are not used with precaution, especially when disabling system apps. Enable them at your own risk.
app.properties-> to enable 'Disable Apps' feature:
An ability to disable user or system applications entirely
app.properties-> to enable 'App Component' feature:
An ability to disable app's permissions, services and receivers. Only user apps are supported.
app.properties-> to list system apps in 'App Component'
Override default host with your own compiled host
Prerequisite for using Adhell3
You need an ELM Development license key in order to use Adhell3.
You need to enroll as a developer in order to get this license. As for developer, the license needs to be renewed every 3 months.
When you receive a mail about license expiration, you usually cannot generate a new key immediately and you need to wait for some days.
During this time, Adhell3 is still working properly. Adhell3 will show an activation dialog if the key cannot be used anymore. This time you should be able to generate a new key.
- Enroll as a developer with this link: https://seap.samsung.com/enrollment
- Generate a license key from this EXACT link: https://seap.samsung.com/license-keys/generate/edu
- Give an alias name, e.g. test
- Click on
Generate License Key