Privacy Browser

Privacy Browser is an open source Android web browser focused on user privacy. It is released under the GPLv3+ license. The source code is available from git.stoutner.com.

The standard version is available on F-Droid, Google Play, XDA Labs, and the Amazon Appstore. The free version has all the features of the standard version with the addition of a banner ad across the bottom of the screen. It is available on Google Play, XDA Labs, and the Amazon Appstore.

Privacy Browser has two primary goals.

  1. Minimize the amount of information that is sent to the internet.
  2. Minimize the amount of information that is stored on the device.

Most browsers silently give websites massive amounts of information that allows them to track you and compromise your privacy. Websites and ad networks use technologies like JavaScript, cookies, DOM storage, user agents, and many other things to uniquely identify each user and track them between visits and across the web.

In contrast, privacy sensitive features are disabled by default in Privacy Browser. If one of these technologies is required for a website to function correctly, the user may choose to turn it on for just that visit. Or, they can use domain settings to automatically turn on certain features when entering a specific website and turn them off again when leaving.

Privacy Browser currently uses Android’s built-in WebView to render web pages. As such, it works best when the latest version of WebView is installed. In the 4.x series, Privacy Browser will switch to a forked version of Android’s WebView called Privacy WebView that will allow for advanced privacy features.

Warning: Android KitKat (version 4.4.x, API 19) ships an older version of OpenSSL, which is susceptible to MITM (Man In The Middle) attacks when browsing websites that use outdated protocols and cipher suites.

The Git repository can be cloned by running the following command:

git clone git://git.stoutner.com/git/PrivacyBrowser.git

There is also an Android.mk repository for integrating Privacy Browser into ROMs.

Join the Conversation

46 Comments

  1. Many android browsers allow for a standard/wide viewport choice. See Habit, Atlas and Naked browsers as examples. I have a personal website with personal bookmarks that works best with a standard viewport. Also, the ability to turn off style sheets can be of use, as the seattletimes.com website won’t allow browsing if javascript is turned off. Turning off the style sheets does the trick, however. Further, having the Home and Clear and Exit icons right at the top of the left hand drop-down menu would improve convenience, IMO. Your browser is very good, and I am glad I discovered it. Keep up the good work. You have achieved something worthwhile.

  2. Dude you have got to add fingerprinting protection. Like the Canvas Defender add on for firefox. This could be the best browser there is if youd just add this and also allow the logged connections on a site to be interactive. Sorta like uMatrix but your own design. This browser is so fast and minimal permissions. Desperately need fingerprinting protection my man.

  3. Can’t use it until you add fingerprinting protection like Canvas Defender for FF. And have a uMatrix like panel. Once you at least add FP protection your browser will be by far the best.

    1. See the reply to the previous comment for some information about canvas fingerprinting. Making the requests activity interactive will also require Privacy WebView, which will be added in the 4.x series. I have added a feature requests to track development of this feature. https://redmine.stoutner.com/issues/405.

  4. Hi is it possible to add an all black theme for nav bar and settings on amoled displays?

    Thanks for the great browser..all the others are garbage.

    1. There is a dark theme that can be enabled in the settings. This changes the color of all of Privacy Browser’s controls, but leaves the web pages with their natural colors. There is a separate night mode that adjusts the colors of the web pages.

      1. AMOLED black is completely black to conserve as much battery as possible, a grey dark mode needs to power every grey pixel.

        It’s the only thing missing from an otherwise perfect browser.

    1. It is hiding under Layout in the Options Menu. It is a little hard to find, but I haven’t been able to think of a better place to put it.

  5. Hi, thanks for your work.
    I’m trying to use it as my daily browser since it supports tab.
    I do have a question : I don’t get which settings I should allow on trusted websites to keep my logins active?
    Cheers,
    Guillaume

  6. Am I missing where to put bookmarks? Can’t wait find them. Thanks for a great browser.

    1. Bookmarks are available by swiping from the right edge of the screen. There are instructions for using bookmarks in the Guide included with Privacy Browser, but it isn’t always apparent to people where to find them.

  7. The browser seems to have some problems with sideways scrollable pictures. The scrolling ist VERY slow, only a few pixels per finger swipe. Changing the user agent doesn’t solve this.

  8. Are there any plans to add hide-ad or element picker? (like present in Ublock-origin)

    Reading articles without using an element picker is difficult. Either they require JavaScript to dismiss (disabled by default or annoying if you clear data frequently). When enabled–night mode– then sticky elements like navigation bar among other follow the page taking precious screen space.

    Also could there be an option to hide the android’s status bar? I prefer reading articles full screen.

    The design and the amount of user controls are awesome! Keep that up!

    1. I have created a feature request to modify page elements via blocklists. This will require Privacy WebView in the 4.x series. https://redmine.stoutner.com/issues/442
      Based on what happens with Google’s addition of a night mode to WebView, it may be possible for me to remove the current requirement for JavaScript to be enabled for night mode before the 4.x series. https://redmine.stoutner.com/issues/193
      There is already an option to enable full screen mode by double tapping. It can be found in the settings.

  9. hi!
    how can open new tab on backgroud?
    this is a great browser, but I don’t found this option..
    thanks.

  10. Please add build in switcher to use i2p. Currently you application has option to switch to Tor via Orbot. It will be so useful if you add option for i2p.

  11. Would be great to be able to configure TLS stack – disable 0rtt, session tickets, session IDs, specific ciphers/tls versions, some info on HSTS – is HSTS info collected for all sites browsed or not – like SiteSecurityServiceState.txt in Firefox.

    Also having more granularity on 3p-block to block even subdomains e.g. so requests to subdomain.example.com are considered 3p from example.com or http://www.example.com. Being able to whitelist (when have 3p-block enabled)/blacklist specific requests and types of requests (e.g. css,images,script,inline-script,wss,xhr,csp,frames,etc (im sure im not being exhaustive), and customize/disable certain headers – e.g. accept header, accept encoding header, disable X-Requested-With and especially be able to disable Referrer Headers…

    Equally being able to intercept api calls by specific scripts on a given page, and to be able to exhaustively disable specific JS APIs would be awesome (but i know a massive job)…canvas fingerprinting protection, etc…dom iddb,websockets, webrtc, etc…

    I know some of these are probably impossible until Privacy Webview is finished, but would be great if some of these options were available (especially the ublock origin style request white/blacklisting and the referer control).

    Cool project and much nicer than fennec/fenix otherwise!

  12. Would it be possible to move the address and tab bar at the bottom? It would be much easier to browse with one hand…

  13. How can I display images on a web page, for example 1597.ch/charts.htm? I’ve tried everything… Thank you for a great browser. FYI, I’m using LineageOS 16, with micro (a Google free phone)

      1. Interestingly, some of the charts do not display with HTTPS (likely because the website is trying to embed HTTP content into a HTTPS website, which Privacy Browser does not allow). More charts display for http://1597.ch/charts.htm.

  14. Thank you for the reply. Here is the info:

    Build: lineage_klte-userdebug 8.1.0 OPM7.181205.001 f487a080c4 dev-keys
    WebView Version: 71.0.3578.99

    Enabled:
    java script
    first & third party cookies
    Dom storage
    all list disabled
    WebViewDefault

    1. John,

      You are using a really old version of Webview. You should try updating it and seeing if that fixes the problem. The current version is 75.0.3770.143.

      You should also make sure you are using http://1597.ch/charts.htm instead of the HTTPS version as mentioned above. Because the website is coded incorrectly, only half the charts will display on HTTPS.

      If that doesn’t work you should file a bug report at redmine.stoutner.com and include screenshots of the webpage not loading images as well as About > Version.

  15. First of all thank you very much for this browser, it is near perfect for me.
    One little question though:
    Would it be possible to add support for Android Autofill? There are some pages I have to login regularly and I would like to use a password manager (keepass DX) for this. Firefox focus/klar is able to use the android autofill feature, but it lacks so many great things from this browser, so PrivacyBrowser supporting autofill would be really awesome.

    1. I’m glad you enjoy using Privacy Browser. It is not doing anything on purpose to prevent autofill from working. If you are having a problem you should submit a bug report at redmine.stoutner.com.

  16. first of all: insane project, great work (why canvas on this site?)
    important:
    please check about the fact that the android system selected country language get submitted which is an insane privacy killer when ur phone isnt using english language.
    i used the browser with tor and received all the time country specific output of duckduckgo in my native language.

Leave a comment

Leave a Reply to John Cancel reply

Your email address will not be published. Required fields are marked *